zeit+zeit?
karl
- php
0 Cheatah0 Martin Dunst2 Nixwisser
Hallo,
ich habe folgendes Problem: Ich habe eine Datenbank mit mehrern mp3s. Nun will ich die gesamte Spiellänge ausgeben. Die Länge wird pro mp3 vom typ "time" in der DB gespeichert.
In meiner while-Schleife durch die DB hab ich folgendes probiert:
$mp3_all_length=$mp3_all_length+$mp3_length;
Allerdings werden so nur volle Stunden zusammengezählt. Wenn ch z.B. 3 mp3s drin hab
01:20:00
02:55:00
00:50:00
Kommt als Ergebnis einfach nur "3" heraus. Muss ich der Variablen $mp3_all_length erst irgendwie sagen, dass sie vom typ "time" ist und nicht int oder so? Falls ja, wie mach ich das?
$mp3_all_length : time ging nicht :-/
ich danke euch!
karl
Hi,
Muss ich der Variablen $mp3_all_length erst irgendwie sagen, dass sie vom typ "time" ist und nicht int oder so?
PHP kennt keinen solchen Typus. Rechne die Zeiten in Sekunden um, oder erstelle eine entsprechende Klasse, die Dich bei den Berechnungen unterstützt.
Cheatah
Hallo,
[...] Die Länge wird pro mp3 vom typ "time" in der DB gespeichert.
Ich würde an Deiner Stelle die jeweilige Spieldauer in Sekunden umrechnen und in ein Integer-Feld speichern.
Du ersparst Dir damit viel Unbill und kannst die Gesamtdauer problemlos per SQL mit SUM() abfragen.
lg
Martin Dunst
01:20:00
02:55:00
00:50:00Kommt als Ergebnis einfach nur "3" heraus. Muss ich der Variablen $mp3_all_length erst irgendwie sagen, dass sie vom typ "time" ist und nicht int oder so? Falls ja, wie mach ich das?
Dass Du zum Addieren die Zeiten in Sekunden umrechnen musst, weißt Du ja schon. Bevor Du Dir damit aber in PHP einen abbrichst: MySQL bietet eine Funktion namens time_to_sec() (und ein Gegenstück namens sec_to_time() gibt's auch).