php - WordPress:如何使用 PHP 和 MySQL 更新数据库中的数据?
问题描述
我正在使用核心 PHP 为我的网站制作 WordPress 自定义页面模板,但是当我更新用户 ID 时,它并没有更新用户 ID。
假设我在数据库中有一个用户,当用户使用 PayPal 支付金额时,将该用户 ID 设为 1。默认情况下,其 ID 为 0。
$wpdb->query( $wpdb->prepare( "UPDATE user_register SET pay_status = '$pay_status' WHERE wp_user_id = $current_user" ) );
我想在付款时将该用户状态设为 1。
解决方案
您的代码应该可以工作。但是如果不知道完整的源代码,我们不知道为什么它不起作用。
尽管您可以进行 update $wpdb->query
,但 $wpdb 确实有更好的方法来更新一行。改为使用$wpdb->update
。
if($user_is_paying){
global $wpdb;
$table = 'user_register';
$data = array('pay_status'=>$pay_status);
$where = array('wp_user_id'=>$current_user);
$wpdb->update( $table, $data, $where);
}
推荐阅读
- amazon-s3 - 如何将文件从 AWS S3 存储桶下载到 openshift 上的 springboot 应用程序?
- nlp - 将 spacy 与古/古英语单词一起使用?
- scala - 如何在 sbt 中创建内部项目之间的图依赖关系?
- apache-kafka - 在不停止进程的情况下删除 kafka connect 主题
- xml - DomParser - 实体名称必须紧跟实体引用中的“&”
- postgresql - SQL 错误 [22023]:错误:format() 的参数太少其中:执行中的 PL/pgSQL 函数第 12 行
- google-cloud-platform - Google Action - 从一个 Google 帐户迁移到另一个
- winapi - AppCertDLLs 在 GUI 应用程序中不起作用,为什么?
- excel - 带有 INDEX MATCH 参考的 Excel HYPERLINK 无效
- gitlab - 具有特定名称的文件中的 Gitlab CI/CD 配置