加入收藏 | 设为首页 | 会员中心 | 我要投稿 北几岛 (https://www.beijidao.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

php – WordPress wp_update_user仅在刷新后更新

发布时间:2021-08-28 03:48:57 所属栏目:大数据 来源: https://www.jb51.cc
导读:我的wordpress安装中有一个自定义页面,除其他外,它允许用户显示和更改前端的电子邮件地址. 但是,当他们这样做时,电子邮件在数据库中被正确更改,但在页面上没有更新,直到另一次刷新(有或没有$_POST).这种行为真的很奇怪,我找不到原因. 这是代码中有问题的部分

我的wordpress安装中有一个自定义页面,除其他外,它允许用户显示和更改前端的电子邮件地址.

但是,当他们这样做时,电子邮件在数据库中被正确更改,但在页面上没有更新,直到另一次刷新(有或没有$_POST).这种行为真的很奇怪,我找不到原因.

这是代码中有问题的部分:

if ( !empty( $_POST['user_email'] ) )
    wp_update_user( array ('ID' => $queried_user->id, 'user_email' => esc_attr( $_POST['user_email'] ) ) ) ;

如果我执行var_dump($_ POST)和var_dump($queried_user),我会在$_POST变量中正确显示user_email,但相应地,仍然是$queried_user变量中的旧值.但是,通过PHPMyAdmin查看数据库,我可以看到数据已经更新.再次刷新浏览器页面后,一切都正确显示.

有什么指针吗?

解决方法:

不确定如何填充$queried_user,但试试这个:

if ( !empty( $_POST['user_email'] ) )
{
   $queried_user->user_email=$_POST['user_email'];
   wp_update_user( array ('ID' => $queried_user->id, 'user_email' => esc_attr( $queried_user->user_email ) ) ) ;
}

(编辑:北几岛)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读