Hallo,
eine Frage, wie müsste ich folgendes umsetzten?
Auf meiner Startseite lese ich ein paar News aus mit folgender Funktion
function news($mysqli, $filter=false) {
$select = "SELECT n_id, n_code, n_titel, n_titel_url, n_news, n_bild, n_datum,
n_uhrzeit, n_status, n_von, n_bis
FROM news WHERE n_status=1 ORDER by n_id DESC ";
if ($filter) {
$stmt = $mysqli->prepare($select . "LIMIT ?" );
$stmt->bind_param("s", $filter);
}
else {
$stmt = $mysqli->prepare($select);
}
$stmt->execute();
$stmt->bind_result($n_id, $n_code, $n_titel, $n_titel_url, $n_news, $n_bild,
$n_datum, $n_uhrzeit, $n_status, $n_von, $n_bis);
$stmt->store_result();
if($stmt->num_rows() > 0) {
while ($stmt->fetch()){
$news[] = array(
'n_id' => $n_id,
'n_code' => $n_code,
'n_titel' => $n_titel,
'n_titel_url' => $n_titel_url,
'n_news' => $n_news,
'n_bild' => $n_bild,
'n_datum' => $n_datum,
'n_uhrzeit' => $n_uhrzeit,
'n_status' => $n_status,
'n_von' => $n_von,
'n_bis' => $n_bis
);
}
return $news;
}
}
Jetzt möchte ich News nur eine bestimmte Zeit anzeigen lassen, dazu nutze ich die Felder n_von und n_bis. Im SELECT müsste ich dazu doch BETWEEN nutzen oder? Ich möchte aber auch alle News angezeigt bekommen die kein von bis haben, in der Datenbank werden die mit 0000-00-00 gelistet, ich habe dazu Date genutzt, warum er da so ein komisches Datum nimmt keine Ahnung.
Wie müsste ich dazu meine Funktion erweitern?