ich möchte in meiner Datenbank ein Enddatum eingeben,
um Artikel nach diesem Datum nicht mehr anzuzeigen.
Wie gehe ich am besten vor? Bisher habe ich das manuell
gemacht, in dem ich ‚status‘ aktuell bzw offline per Formular
in der Datenbank geändert habe.
Der Befehl bisher: …
$count= „SELECT COUNT(*) FROM ordner WHERE rubr_1=’“.$_GET[‚rubr‘]."’ ORDER BY status" ;
Neu sollte es dann so funktionieren:
Tagesdatum größer als Enddatum = Artikel wird nicht angezeigt.
Wie schaut so ein Befehl dann aus bzw wie muss ich das ganze ergänzen?
…
$count= „SELECT COUNT(*) FROM ordner WHERE
rubr_1=’".$_GET[‚rubr‘]."’ ORDER BY status“ ;
Neu sollte es dann so funktionieren:
Tagesdatum größer als Enddatum = Artikel wird nicht angezeigt.
Wie schaut so ein Befehl dann aus bzw wie muss ich das ganze
ergänzen?
nichts spricht gegen eine weitere where-Bedingung…?
Ist halt die Frage, ob Du mit timestamps arbeitest, oder mit Datumswerten - wobei ich die Timestamps bevorzuge…
Alternativ kannst Du auch erst im PHP code rausfiltern…
Wäre relativ egal
außerdem solltest du kein $_GET[] direkt in deine SQL Abfrage einbauen sondern vorher einen sicherheitscheck machen ob das was per $_GET[] übergeben wird überhaupt übergeben werden darf.
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Wenn ich das ganze mit Timestamp machen möchte, muss ich das Datum aber erst umwandeln (z.B. hier: www.voja.de/descht/timestamp.php )
und dann diesen Timestamp-Wert im Formular eingeben?
Gibt es nicht die Möglichkeit, das Datum einzugeben und das php rechnet das automatisch um?
Für mich wäre es auch übersichtlicher, wenn ich ein Datum sehe und kein Timestamp-Wert…
Wenn ich das ganze mit Timestamp machen möchte, muss ich das
Datum aber erst umwandeln (z.B. hier: www.voja.de/descht/timestamp.php )
und dann diesen Timestamp-Wert im Formular eingeben?
Gibt es nicht die Möglichkeit, das Datum einzugeben und das
php rechnet das automatisch um?
Für mich wäre es auch übersichtlicher, wenn ich ein Datum sehe
und kein Timestamp-Wert…
Dann nimm doch auch DATE in der Datenbank, dann wird das z.B. auch in phpmyadmin als Datum angezeigt. In diesem Fall musst du als „y-m-d“ Einfügen, ( date(„Y-m-d“ $timestamp) oder „$j-$m-$t“ von oben). Ggfs. auch per FROM_UNIXTIME($timestamp) direkt in mySQL.
Im WHERE kannst du dann ggfs. auch direkt mit dem aktuellen Datum arbeiten, ohne das erst per PHP vorzugeben, WHERE end_datum
Ich habe im mysql ein Feld mit dem Enddatum hinzugefügt.
In meinem Admin-Bereich sehe ich jetzt auch das Enddatum.
Allerdings habe ich ein Problem bei der Anzeige. Es werden
trotzdem alle Artikel (auch die, deren Enddatum zurückliegt)
angezeigt.
Wie verknüpfe ich die beiden WHERE-Bedingungen, damit es klappt?
Mit… $count= "SELECT COUNT(*) FROM ordner WHERE end_datumWHERE rubr_1=’".$_GET[‚rubr‘]."’ OR rubr_2=’".$_GET[‚rubr‘]."’ ORDER BY status" ;
…funktioniert es leider nicht.
Ich habe im mysql ein Feld mit dem Enddatum hinzugefügt.
In meinem Admin-Bereich sehe ich jetzt auch das Enddatum.
Allerdings habe ich ein Problem bei der Anzeige. Es werden
trotzdem alle Artikel (auch die, deren Enddatum zurückliegt)
angezeigt.
Wie verknüpfe ich die beiden WHERE-Bedingungen, damit es klappt?
Mit… $count= "SELECT COUNT(*) FROM ordner WHERE end_datumWHERE rubr_1=’".$_GET[‚rubr‘]."’ OR rubr_2=’".$_GET[‚rubr‘]."’ ORDER BY status" ;
…funktioniert es leider nicht.