Start und Ende
Svenja
- php
-1 Kalle_Worms
Guten Abend,
hab da mal ein sehr großes Problem wo ich einfach nimmer weiter komme und zwar möchte ich folgendes machen.
Auf meiner Seite gibts immer mal wieder ein paar News. Da ich aber nicht jeden Tag drauf sehen kann und auch wieder alles löschen habe ich das jetzt mal überlegt, dass ich das mmit PHP machen kann. Davon habe ich leider nur sehr wenig Ahnung :-(
Also hier kommt mal meine Frage.
Wie kann ich das machen, dass ich dem PHP sagen kann, hey ich habe in der Datenbank eine Zeit stehen wo das angezeigt werden soll und ich habe ein Ende stehen ab da soll das dann bitte nimmer angezeigt werden. Wenn das eine weg ist, dann soll doch bitte gleich der nächste Datensatz aus der DB angezeigt werden.
Kann mir da jemand helfen das umzusetzten? Währe darüber echt ganz froh :-)
Gruß Svenja
Hallo Svenja,
du musst jedem Datensatz zwei Zeitfelder JJJJ MM TT hh mm geben, z.B.:
CREATE TABLE table_name (
zeit_von varchar(12) NOT NULL default '200501010000'
,zeit_bis varchar(12) NOT NULL default '200612312359'
,...
)
Die gewünschte Gültigkeitsdauer reinschreiben, z.B. von morgen 22:04 bis übermorgen 8:00 Uhr:
INSERT INTO table_name VALUES (
'200503092204'
,'200503100800'
,...
)
und die gewünschten Sätze rausziehen, die JETZT gültig sind:
$jetzt = date( "YmdHi", time());
// Y 2005, m 03, d 08, H 22, i 12
$query = "
SELECT *
FROM table_name
WHERE zeit_von <= ".$jetzt."
AND zeit_bis >= ".$jetzt;
Ich hoffe, ich konnte helfen.
LG Kalle
Hallo Kalle,
CREATE TABLE table_name (
zeit_von varchar(12) NOT NULL default '200501010000'
,zeit_bis varchar(12) NOT NULL default '200612312359'
das ist Unsinn. Für sowas gibt es extra Datumstypen bei MySql z.B. DATE bzw. wenn du die Zeit auch mit haben willst eben DATETIME.
und die gewünschten Sätze rausziehen, die JETZT gültig sind:
$jetzt = date( "YmdHi", time());
MySql kennt NOW() (und andere DBMS vermutlich auch, zumindest sowas ähnliches)
$query = "
SELECT *
http://www.php-faq.de/q/q-sql-select.html
FROM table_name
WHERE zeit_von <= ".$jetzt."
AND zeit_bis >= ".$jetzt;
du kennst BETWEEN?
Grüße aus Nürnberg
Tobias