Wie bekomme ich die zuletzt eingefügte Zeilen-ID aus der WordPress-Datenbank?
Mein wordpress plugin hat eine Tabelle mit einer AUTO_INCREMENT Primärschlüsselfeld namens ID. Wenn eine neue Zeile in die Tabelle eingefügt werden, würde ich mag, um den ID-Wert der Einfügung.
Funktion soll unter Verwendung von AJAX, um post-Daten an server in die DB einfügen. Das neue Zeilen-ID zurückgegeben wird, in der AJAX Antwort auf update-client-status. Es ist möglich, dass mehrere clients Veröffentlichung von Daten zum server zur gleichen Zeit. So, ich muss sicherstellen, dass jeder AJAX-Anfrage bekommen, die GENAU die neue row-ID in der Antwort.
In PHP, es gibt eine Methode namens " mysql_insert_id für diese Funktion.Aber, es ist gültig für race-Bedingung, nur wenn das argument Verbindungs-Kennung der letzten operation. Mein Betrieb mit Datenbank $wpdb. Wie extrahieren Sie die Verbindungs-Kennung von $wpdb, um sicherzustellen, dass mysql_insert_id Arbeit? Gibt es irgendeinen anderen Weg, um den zuletzt eingefügten Zeile id from $wpdb?
Dank.
InformationsquelleAutor der Frage Morgan Cheng | 2009-10-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Direkt nach der
$wpdb->insert()
wird, werden die insert -, dies zu tun:Mehr Informationen darüber, wie Sie Dinge tun, die wordpress-Weg finden Sie im wordpress codex. Die obigen Angaben waren finden Sie hier auf dem wpdb-Klasse Seite
InformationsquelleAutor der Antwort jsnfwlr
Dies ist, wie ich es gemacht habe, in meinem code
Mehr Klasse Variablen
InformationsquelleAutor der Antwort Francisco Corrales Morales
So etwas sollte es auch tun :
InformationsquelleAutor der Antwort Martin
Setzen Sie den Aufruf
mysql_insert_id()
innerhalb einer Transaktion, sollte man es tun:InformationsquelleAutor der Antwort Ollie Saunders