You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在独立PHP页面向WordPress添加订阅者遇日期与语法问题求助

问题解决方案

1. 日期存入显示为0的修复

问题根源是SQL语句中$essai未用单引号包裹,user_registered属于datetime类型,必须将日期字符串以字符串形式传入数据库。更稳妥的方式是使用预处理绑定参数,既能避免SQL注入风险,也能自动处理数据类型转换:

echo date('Y-m-d H:i:s');
$a = date("Y-m-d H:i:s");

include('base2.php');
// 用占位符替代手动拼接变量,避免格式错误
$sql = "INSERT INTO `u4_testclone`.`wp_users` 
        (`ID`, `user_login`, `user_pass`, `user_nicename`, `user_email`,`user_url`,`user_registered`, `user_activation_key`, `user_status`, `display_name`) 
        VALUES (?, ?, MD5(?), ?, ?, ?, ?, ?, ?, ?)";
$query = $bdd->prepare($sql);
// 按占位符顺序绑定参数
$query->execute([
    '312', 
    'demo', 
    'demo', 
    'Your Name', 
    'phil@pecheperle.be', 
    'http://www.example.com/', 
    $a, 
    '', 
    '0', 
    'Your Name'
]);

2. 订阅者权限引号错误的修复

wp_capabilities存储的是PHP序列化后的数组,手动编写字符串时内部双引号会和SQL语句的外层引号冲突,引发语法错误。推荐两种修复方式:

方式1:预处理绑定参数(最优方案)

先通过PHP函数序列化权限数组,再用预处理绑定参数传入,彻底避免引号冲突:

// 序列化订阅者权限数组
$capabilities = serialize(['subscriber' => true]);
$sql2 = "INSERT INTO `u4_testclone`.`wp_usermeta` 
        (`umeta_id`, `user_id`, `meta_key`, `meta_value`) 
        VALUES (NULL, ?, ?, ?)";
$query = $bdd->prepare($sql2);
// 注意user_id要和wp_users表中插入的ID(312)保持一致,之前写的3是错误的
$query->execute(['312', 'wp_capabilities', $capabilities]);

// 修正wp_user_level插入,订阅者对应的级别是0,不是管理员的10
$sql3 = "INSERT INTO `u4_testclone`.`wp_usermeta` 
        (`umeta_id`, `user_id`, `meta_key`, `meta_value`) 
        VALUES (NULL, ?, ?, ?)";
$query = $bdd->prepare($sql3);
$query->execute(['312', 'wp_user_level', '0']);

方式2:转义内部引号(不推荐,易出错)

如果一定要手动编写序列化字符串,需对内部双引号进行转义:

$sql2 = "INSERT INTO `u4_testclone`.`wp_usermeta` 
        (`umeta_id`, `user_id`, `meta_key`, `meta_value`) 
        VALUES (NULL, '312', 'wp_capabilities', 'a:1:{s:10:\"subscriber\";b:1;}')";
$query = $bdd->prepare($sql2);
$query->execute();

额外注意事项

  • 原代码中wp_user_level写为10,这是管理员级别,订阅者对应的正确级别是0,需修正。
  • user_id必须和wp_users表中插入的用户ID(312)保持一致,否则权限会绑定到错误用户。

内容的提问来源于stack exchange,提问作者pierre

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 15:55:33