在 $wpdb->insert 中插入 Where 子句

23 浏览
0 Comments

在 $wpdb->insert 中插入 Where 子句

我的WordPress插件有一个名为ID的AUTO_INCREMENT主键字段的表。当插入一个新的行到表中时,我想要获取插入的ID值。

使用AJAX来将数据发送到服务器插入到数据库,然后将新行的ID返回到AJAX响应以更新客户端状态是一个特性。可能有多个客户端同时向服务器发送数据。所以,我必须确保每个AJAX请求在响应中获取到确切的新行ID。

在PHP中,有一个称为mysql_insert_id的方法来实现此功能。但是,仅在参数是上次操作的link_identifier时才适用于竞争条件。我的与数据库的操作在$wpdb上。如何从$wpdb中提取link_identifier以确保mysql_insert_id起作用?还有其他方法从$wpdb中获取最后插入的行ID吗?

谢谢。

admin 更改状态以发布 2023年5月19日
0
0 Comments

这就是我在代码中的实现方式

 ...
 global $wpdb;
 $query =  "INSERT INTO... VALUES(...)" ;
 $wpdb->query(
        $wpdb->prepare($query)
);
return $wpdb->insert_id;
...

更多的类变量

0
0 Comments

在进行插入操作的 $wpdb->insert() 之后,立即执行以下步骤:\n

$lastid = $wpdb->insert_id;

\n有关如何按 WordPress 的方式完成各种操作的更多信息可以在 WordPress codex 中找到。上面的细节可以在 wpdb 类页面 上找到。

0