Meu plugin do WordPress tem uma tabela com um campo de chave primária AUTO_INCREMENT chamado ID. Quando uma nova linha é inserida na tabela, gostaria de obter o valor de ID da inserção.
O recurso é usar AJAX para postar dados no servidor para inserir no banco de dados. O novo ID de linha é retornado na resposta AJAX para atualizar o status do cliente. É possível que vários clientes estejam postando dados no servidor ao mesmo tempo. Portanto, tenho que garantir que cada solicitação AJAX obtenha a nova ID de linha EXATA em resposta.
No PHP, existe um método chamado mysql_insert_id para este recurso. Mas, ele é válido para condição de corrida apenas se o argumento for link_identifier da última operação. Minha operação com o banco de dados está em $ wpdb. Como extrair o link_identifier de $ wpdb para garantir que mysql_insert_id funcione? Existe alguma outra maneira de obter o id da última linha inserida de $ wpdb?
Obrigado.
$wpdb->dbh
, mas está definido comoprotected $dbh;
... mas você não pode acessá-lo diretamente, portanto, use a resposta abaixo :)