我为我的WordPress插件创建了一个自定义表,并将其命名为“recp_clients”。不确定是否重要,但我没有使用“wp _”的前缀。
在我的php文件中处理一些表单数据,而不是通过“mysql_connect”等使用旧的连接方式,我想使用$ wpdb来插入帖子数据。
问题是它不起作用。
编辑: 不确定是否重要,但此代码位于php文件中,该文件位于我的主插件文件夹中名为includes的文件夹内。使用ajax从.js文件调用该文件。不确定这是否与为什么$ wpdb不起作用有关,但我想如果重要的话我会添加这些信息。
这就是我所拥有的:
$hisname=$_POST['hisname'];
$hername=$_POST['hername'];
$lastname=$_POST['lastname'];
global $wpdb
$wpdb->insert('recp_clients', array('client_hisname' => $hisname, 'client_hername' => $hername, 'client_lastname' => $lastname));
我也试过这个:
$hisname=$_POST['hisname'];
$hername=$_POST['hername'];
$lastname=$_POST['lastname'];
global $wpdb
$recp_clients_table = $wpdb->prefix . ‘recp_clients’;
$wpdb->insert($recp_clients_table, array('client_hisname' => $hisname, 'client_hername' => $hername, 'client_lastname' => $lastname));
非常感谢任何帮助。预先感谢。
答案 0 :(得分:0)
您缺少WHERE子句。除非您使用相同的数据更新所有行,否则您需要这样做。如果不包含此内容,WP可能不会运行查询。
$wpdb->update(
'recp_clients',
array(
'client_hisname' => $hisname,
'client_hername' => $hername,
'client_lastname' => $lastname),
array('id' => '54') // This is your WHERE clause
);