首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >用javascript修改后,如何将自定义字段的值保存到wordpress的user_meta中?

用javascript修改后,如何将自定义字段的值保存到wordpress的user_meta中?
EN

Stack Overflow用户
提问于 2018-07-17 11:40:22
回答 1查看 632关注 0票数 0

我正在使用一个插件在WordPress数据库中的user_meta中创建字段。要创建页面,首先我创建了一个模板。然后我用插件的函数请求字段的值:

代码语言:javascript
复制
<?php $pc = rp_user_data_func("pc","1"); ?>

然后我使用javascript将PHP变量转换为javascript。

代码语言:javascript
复制
<script type="text/javascript"> var pc = <?php echo $pc; ?>;</script>

最后在几个javascript函数中使用了变量pc,这将改变变量的值。

现在,我需要更新自定义域,并在用户单击“保存”按钮后将新值保存在WordPress的数据库中。

在WordPress中有没有具体的方法呢?这是代码的简化版本:

代码语言:javascript
复制
<?php
    $pc = rp_user_data_func("pc","1");
    if ( empty($pc) ) $pc = '0';

    if (isset($_POST['submit']))
    {
        myfnc();
        }
        function myfnc()
        {
            $user_id = 1;
            add_user_meta( $user_id , $pc , $pp , false );
        }
        ?>
<html>
    <head>
        <script type="text/javascript">
    var pc = <?php echo $pc; ?>;

    function pc_add () {
            pc = pc + 1;
            alert(pc);
        }
        function pc_sub () {
            pc = pc - 1;
            alert(pc);
        }
        </script>
        <style> 
            .square_add{
                width: 100px;
                height: 100px;
                Background-color: green;
                float: left;
            }
            .square_sub{
                width: 100px;
                height: 100px;
                Background-color: red;
                float: left;
            }
        </style>
        </head>
        <body>
            <div class="square_add" onclick="pc_add();">ADD</div>
            <div class="square_sub" onclick="pc_sub();">SUB</div>
            <form action="." method="post">
            <input type="submit" name="submit" value="submit">              
        </form>
        </body>
</html>

下面是运行此代码的页面(更改变量但不保存):http://www.anastorm.ihostfull.com/teste/

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-17 23:26:47

我刚得到帮助。

如果任何人都有同样的问题,下面是工作代码:

代码语言:javascript
复制
<?php 
$pc = rp_user_data_func("pc", "1");
if (empty($pc))
    $pc = '0';

function myfnc($pc2) {
$user_id = 1;
update_user_meta($user_id, 'pc', $pc2);
$pct = rp_user_data_func("pc", "1");
unset($_POST);
}

if (isset($_POST['submit']) && !empty($_POST['pc'])) {
myfnc($_POST['pc']);
}
?>
<html>
<head>
    <script type="text/javascript">
        var pc = <?php echo $pc; ?>;

        function pc_add() {
            pc = pc + 1;
            alert(pc);
            document.getElementById('pc').setAttribute('value',pc);
        }
        function pc_sub() {
            pc = pc - 1;
            alert(pc);
            document.getElementById('pc').setAttribute('value',pc);
        }
    </script>
    <style> 
        .square_add{ width: 100px; height: 100px; Background-color: green; float: left;}
        .square_sub{ width: 100px; height: 100px; Background-color: red; float: left;}
    </style>
</head>
<body>
    <div class="square_add" onclick="pc_add();">ADD</div>
    <div class="square_sub" onclick="pc_sub();">SUB</div>
    <form action="." method="post">
        <input type="hidden" name="pc" id="pc" value="" />
        <input type="submit" name="submit" value="submit">          
    </form>
</body>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51372897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档