Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Wordpress如何更新数据库字段_Php_Mysql_Wordpress - Fatal编程技术网

Php Wordpress如何更新数据库字段

Php Wordpress如何更新数据库字段,php,mysql,wordpress,Php,Mysql,Wordpress,我已经创建了一个插件,管理员可以在其中创建预订表单并将其分配给用户 当用户访问其帐户时,他们会看到分配给他们的所有表单的列表。单击表单链接将他们带到表单-表单链接在链接中有一个查询变量,即yoursite.com/booking form/?booking id=[表单id号] 我对这个页面进行了编码,以便从表单ID中获取表单的信息 当表单完成并提交后,我想更新数据库wp_postemta表中的结果。该字段称为“婚礼\隐藏\已完成”,提交表单时,我希望将值更改为“1”(当前为空) 我正在使用以下

我已经创建了一个插件,管理员可以在其中创建预订表单并将其分配给用户

当用户访问其帐户时,他们会看到分配给他们的所有表单的列表。单击表单链接将他们带到表单-表单链接在链接中有一个查询变量,即
yoursite.com/booking form/?booking id=[表单id号]

我对这个页面进行了编码,以便从表单ID中获取表单的信息

当表单完成并提交后,我想更新数据库wp_postemta表中的结果。该字段称为“婚礼\隐藏\已完成”,提交表单时,我希望将值更改为“1”(当前为空)

我正在使用以下代码更新我的数据库:

if (isset($_POST['submit_booking_form'])) {

$wpdb->update( 
            'wp_postmeta', 
            array(
                'wedding_hidden_is_completed' => 1,
            ),
            array(
                'post_id' => $booking_form_id,

            ) 
        );
}
$booking\u form\u id变量在页面前面使用以下代码设置,该代码从url查询字符串中获取值:

$booking_form_id = get_query_var( 'booking-id' );

但是,当我提交表单时,我的字段不会更新。有什么原因吗?

除非必须,否则不应该使用WPDB global。Wordpress为此提供了一个简单的函数。只要预订是一个职位

update_post_meta( $booking_form_id, 'wedding_hidden_is_completed', '1' );

你启用调试了吗?你真的不应该为此使用
$wpdb
。@Mihai刚刚打开它,在“字段列表”中获得“未知列“婚礼隐藏”已完成”@mevius我应该使用什么?至于您的错误,hidden_is_completed可能是该表中的元键,而不是列