Moja wtyczka WordPress ma tabelę z polem klucza podstawowego AUTO_INCREMENT o nazwie ID. Kiedy nowy wiersz jest wstawiany do tabeli, chciałbym uzyskać wartość ID wstawienia.
Funkcja polega na używaniu AJAX do wysyłania danych do serwera w celu wstawienia do bazy danych. Nowy identyfikator wiersza jest zwracany w odpowiedzi AJAX w celu zaktualizowania stanu klienta. Jest możliwe, że wielu klientów przesyła dane na serwer w tym samym czasie. Dlatego muszę się upewnić, że każde żądanie AJAX otrzyma w odpowiedzi DOKŁADNY nowy identyfikator wiersza.
W PHP istnieje metoda o nazwie mysql_insert_id dla tej funkcji, ale jest ona ważna dla warunku wyścigu tylko wtedy, gdy argumentem jest identyfikator_linku ostatniej operacji. Moja operacja z bazą danych jest na $ wpdb. Jak wyodrębnić identyfikatora_połączenia od $ wpdb aby upewnić się, że prace mysql_insert_id? Czy jest jakiś inny sposób uzyskania identyfikatora ostatniego wstawionego wiersza z $ wpdb?
Dzięki.
$wpdb->dbh
, ale jest zdefiniowany jakoprotected $dbh;
... więc nie możesz uzyskać do niego bezpośredniego dostępu, dlatego użyj odpowiedzi poniżej :)