1

我需要同时更新 2 个用户字段,给正在投票的用户 8 分,给团队 8 分。

我使用以下代码:

<input type="hidden" name="ptolti" id="ptolti" value="<?php echo $puntitolti; ?>"           class="regular-text" />
<input type="hidden" name="ptotali" id="ptotali" value="<?php echo $risultato; ?>"    class="regular-text" />

<?php 
    function nico_save_custom_user_profile_fields( $user_id ) {
        if ( !current_user_can( 'edit_user', $user_id ) )
        return FALSE; 
        global $wpdb;
        update_usermeta( $user_id , 'ptotali', $_POST['ptotali'] );
        update_usermeta( $id_utente , 'ptotali', $_POST['ptolti'] );
    } 
?>

它适用于为团队投票的 user_id,所以当我点击“投票”时,我得到 8 分,如果我再次点击,我的积分变为 16 并且它是正确的,但团队积分没有更新。

4

2 回答 2

0

我尝试手动更新 id_utente:

update_usermeta( 3 , 'ptotali', $_POST['ptolti'] );

这行得通,所以我想变量 $id_utenti 无法识别...但不明白为什么...因为在 foreach 外部可以很好地识别变量并且输出为 3..

可能是因为我试图将变量放在另一个函数中......所以我该如何解决?

于 2013-09-21T16:23:16.003 回答
0

因为您没有为团队积分传递正确的密钥,所以您为 user_id 和 team_id 传递了相同的密钥。我猜ptolti是球队的关键?

update_usermeta( $user_id , 'ptotali', $_POST['ptotali'] );
update_usermeta( $id_utente , 'ptolti', $_POST['ptolti'] );
于 2013-09-21T15:59:00.930 回答