MarkusS Geschrieben 29. März 2006 Teilen Geschrieben 29. März 2006 Ich werte die log-file meiner TK-Anlage via php aus u.a. die Dauer von Gesprächen. Jetzt hab ich mir noch ne zweite Tabelle angelegt mit den Telefon-Tarifen. Anzeigen lasse ich z.B. Wer hat wen wann wie lang angerufen. Jetzt will ich zusätzlich noch die Kosten angeben. Dazu muss ich aber erst rausfinden mit welchem Tarif ich die Minuten multiplizieren muss. Wie mach ich dass? PS: die Dauer-Spalte ist als Time definiert und das Datum noch als var-char. Mir ist klar, dass ich so nicht weiterhandtieren kann, aber wenn ich Date einstelle bekomme ich sinnlose Daten wg. UNIX-Time... am klügsten wäre es wahrscheinlich, wenn ich es mir die Daten in Unix-Time umwandle und beim anzeigen wieder zurück, oder so? Und die Uhrzeit-Spalte ist ganz normal als time definiert, aber wie realisiere ich die Auswahl der Tarife (Mobilfunk, citiy, national)... mit wochenende und so ist noch ne ganz andere Sache, aber ich will erst mal das mit der Uhrzeit hinbekommen Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Honkytonk Geschrieben 30. März 2006 Teilen Geschrieben 30. März 2006 Hi, vieleicht postest du nochmal dein DBMS und die Tabellenstruktur... Die Konvertierung von Datentypen kannst du in den meisten Systemen auch direkt in der Abfrage vornehmen. (Stichwort: cast) Gruß, Honky Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MarkusS Geschrieben 30. März 2006 Autor Teilen Geschrieben 30. März 2006 Also wie gesagt ich habe zwei Tabellen: VerbDats und tarife: VerbDats: ASK___MSN____Datum_Uhrzeit_Dauer__Nummer_ID__we int2___varchar__bigint__time__time____varchar_int__tinyint (bool) Tarife: Zeit____City__Deutschland__Mobil1_Mobil2 varchar_float__float________float__float Das mit dem Datum/Uhrzeit hab ich jetzt mit der date()-Funktiongelöst, bzw. UNIX-timestamp. in der Spalte we von VerbDats setzt ich jetzt auch damit einen boolean, ob es ein Telefonat am Wochenende (1) oder unter der Woche (0) war. mit explode() kann ich mir die Stunde rausfiltern und so auch den Tarif zuordnen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
SNOWMAN Geschrieben 30. März 2006 Teilen Geschrieben 30. März 2006 hmm... also ich versteh das jetzt so, das du eine tabelle mit allen TElefonaten hast und eine Tabelle mit allen verfügbaren Tarifen. Nun, irgendwie muss der gewählte Tarif identifiziert werden, zB durch eine Vorwahl, oder zwischen 8:00 und 10:00 Uhr Tarif 1, ab 10:00 bis 15:00 Tarif 2 etc. ist der Tarif wirklich von der Uhrzeit abhängig, dann muss das mit in der Tariftabelle stehen, von wann bis wann der tarif aktiv ist. dann schaust du einfach, wann wurde das gespräch begonnen und sucht dir dazu passend den tarif. anhand der vorwahl (nicht tarifvorwahl sondern city, deutschland, handy,..) kannst du dir die jeweilige tarifspalte raussuchen. ist der tarif über die vorwahl zu identifizieren muss die vorwahl mit in die tabelle tarife. Dann gucken, welche tarifvorwahl wird verwendet udn diese in der db suchen und dann wieder spalte wählen und schon hast du den wert scheinbar komplexer: Zu bestimmten Zeiten stehen bestimmte tarife zur verfügung und werden per vorwahl gewählt: reicht weiterhin die tarifvorwahl zu finden außer es gibt den gleichen anbieter mit unterschiendlichen tarifen zu unterschiedlichen zeiten, dann müssen die zeiten doch rein. also: Beschreib und das Tarifsystem, dann können wir gzielt darauf eingehen Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MarkusS Geschrieben 30. März 2006 Autor Teilen Geschrieben 30. März 2006 hmm... also ich versteh das jetzt so, das du eine tabelle mit allen TElefonaten hast und eine Tabelle mit allen verfügbaren Tarifen. richtig verstanden Nun, irgendwie muss der gewählte Tarif identifiziert werden, zB durch eine Vorwahl, oder zwischen 8:00 und 10:00 Uhr Tarif 1, ab 10:00 bis 15:00 Tarif 2 etc. ist der Tarif wirklich von der Uhrzeit abhängig, dann muss das mit in der Tariftabelle stehen, von wann bis wann der tarif aktiv ist. außer es gibt den gleichen anbieter mit unterschiendlichen tarifen zu unterschiedlichen zeiten, dann müssen die zeiten doch rein. also: Beschreib und das Tarifsystem, dann können wir gzielt darauf eingehen Also der Tarif ist von der Zeit (Hauptzeit,Nebenzeit), Wochentag (Wochenende, Werktag) und Nummer (City, mobil, Deutschland) abhängig. Ich bin mittlerweile schon so weit, dass ich mir die Zeit anhand der Stunde (explode(':',$uhrzeit)) filtern kann (HZ,NZ), genauso wie einen boolean setzten ob wochenende ist oder nicht (wenn (date("w",$timestamp)) 0 oder 6 dann $we = 1), und die Nummer kann ich mittlerweile auch filtern mit substr($teile[4],0,2) und dann abfrage was für Zahlen als erstes kommen (01xx, oder 0xx, oder xx). Nur wie füge ich jetzt alles am sinnfollsten zusammen, dass ich den Tarif wählen kann? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.