2016-08-07 9 views
1

arbeiten Was ich mit unter AnweisungMySQL-Abfrage für das heutige Datum nicht

$Sql = "SELECT DateOfInvCreated FROM invoice_list 
    WHERE username = '$username' AND (DateOfInvCreated >= CURDATE() AND DateOfInvCreated < CURDATE() + INTERVAL 1 DAY)"; 

und ich habe auch versucht,

$date_vmd = date("Y-m-d"); 
$Sql = "SELECT DateOfInvCreated FROM invoice_list username = '$username' AND (DateOfInvCreated BETWEEN '$date 00:00:00' AND '$date 23:59:59)" 

falsch mache, was mir diesen Fehler gibt „Warnung: mysqli_fetch_row() erwartet Parameter 1 mysqli_result, boolean gegeben in "

$Sql = "SELECT DateOfInvCreated FROM invoice_list 
     WHERE username = '$username' AND DATE(DateOfInvCreated) = CURDATE()"; 

die weniger effizient. Erste und dritte Abfrage gibt mir nur ein einziges Ergebnis anstelle von vielen. Was habe ich hier falsch? DateOfInvCreated ist der Zeitstempel. Edit: Ich füge einen image

Antwort

1

Mit Ihrer zweiten Abfrage sind Sie nicht die where Klausel, wie Sie unten sehen können.

$date_vmd = date("Y-m-d"); 
$Sql = "SELECT DateOfInvCreated FROM invoice_list username = '$username' AND (DateOfInvCreated BETWEEN '$date 00:00:00' AND '$date 23:59:59)" 

Sie sollten versuchen, diese Abfragen direkt in MYSQL ausgeführt wird, können Sie die vollständigen Ergebnisse werden immer wieder, aber Sie denken, dass Sie nur wieder ein, immer auf der Grundlage der Rest des Codes Sie nicht zeigt.

+0

thnx @henry für das Vorschlagen dieser Abfragen direkt in MYSQL die Abfrage war in Ordnung :). Ich denke, es gab einen Fehler in der Abfrage-Anweisung. Ich schreibe nur diesen ganzen Teil neu. 2. Und 3. funktionieren jetzt gut. – mgons

Verwandte Themen