2016-12-21 4 views
0

Ich versuche ein Wordpress-Plugin zu entwickeln, das eine Tabelle erstellt und dem Administrator erlaubt, Einträge aus dem Backend zur Tabelle hinzuzufügen. Ich möchte auch, dass das Plugin nur den Eintrag zeigt, den der Administrator gerade gemacht hat, also verwende ich die WHERE-Klausel dafür, aber es scheint, dass die WHERE-Klausel nicht korrekt funktioniert. Ich bin in der Lage, die Tabelle und das Formular zu erstellen, wo Admin die Einträge übermitteln wird. Dies ist der Code, den ich für das schrieb:WordPress-Plugin-Entwicklung. Problem mit WHERE-Klausel

$time=current_time('mysql'); 
$r = $wpdb->get_row("SELECT * FROM $table_name WHERE time = $time "); 
echo $r->time; 

Ich habe erfolgreich die Spalte mit Namen ‚Zeit‘ erstellt und die $ Zeitvariable in sie eingefügt. Aber es wird einfach nicht angezeigt, egal was ich mache. Ich hoffe jemand wird bemerken können, was ich verpasst habe. Bitte helfen Sie. Danke im Voraus. Ich habe nur die einfachen Anführungszeichen um die $ time-Variable in der SQL-Abfrage fehlt. Das Hinzufügen dieser Zitate hat das Problem wirklich gelöst !!!!

+0

Surround der '$ Time' Wert mit Apostroph – Raptor

+0

einfach ersetzen Sie den Code mit diesem $ r = $ wpdb-> get_row ("SELECT * FROM $ table_name WHERE Zeit = '$ time'"); – ManuSharma

+0

Vielen Dank! Raptor und ManojSharma, es hat wirklich funktioniert !!!!!! Nochmals vielen Dank !!!!!!!! – user7324674

Antwort

0

ich nicht, warum würden Sie Zeilen wie in der aktuellen zweiten erstellt zeigen, aber wenn Sie wirklich wollen, dass die Verwendung:

SELECT * FROM $table_name WHERE time = NOW() 

Aber! Es ist sehr wahrscheinlich, dass diese Abfrage leer zurückkehrt, da die Erstellungszeit nicht genau diese Sekunde ist. Vielleicht möchten Sie alle Zeilen erstellt heute?

SELECT * FROM $table_name WHERE DATE(time) = DATE(NOW()) 
+0

Vielen Dank für Ihre Antwort, Sir, ich habe nur die einfachen Anführungszeichen um die Variable $ time innerhalb der Abfrage vermisst und sie hinzugefügt, löste das Problem! – user7324674

+0

@TomaszSwider Diese Antwort ist besser eine anstelle der Aggregatfunktion mit variabler Verwendung. –

+0

@TomaszSwider Ich wusste nicht über die Verwendung von DATE (Zeit), ich habe es jetzt in meinem Projekt verwendet, um die Geschichte zu filtern und es funktioniert großartig. Danke vielmals. Diese Website ist großartig. Du weißt nie, welche neuen Dinge auf dich warten. – user7324674