0
我将更新从foreach
循环生成的特定标识的值字段。SQL - PHP foreach循环外的变量ID
$sql = "SELECT `user_id`,
max(case when `meta_key` = 'link' then `meta_value` end) as link ,
max(case when `meta_key` = 'team' then `meta_value` end) as team ,
max(case when `meta_key` = 'points' then `meta_value` end) as points
FROM wp_usermeta GROUP BY `user_id` ORDER BY points DESC";
global $wpdb;
$usermeta = $wpdb->get_results($sql) or die(mysql_error());
foreach ($usermeta as $post)
echo "<li> name: ". $post->team ."<br/> link: ". $post->link . "<br/> obtain: " .$post->points. " points </li>" ;
页面上的输出是一样的东西:
球队:曼联链接:manunited.co.uk点:8
用户可以投票队和国家队赚取8点,所以我需要更新像这样。
update_usermeta($post->user_id , 'points', $_POST['points']);
的问题是,在foreach以外的变量$post->user_id
没有确认,但我需要团队的特定ID进行更新。
谢谢大家。
将它存储在循环之前声明的临时变量中? – Akash
对于未来的代码:您不需要引用/反引用您的专栏和表名称。它们只会增加视觉混乱,并且只是让语法错误发生的另一种方式。你需要它们的唯一原因是如果你有一个列名是保留字,并且使用列名是保留字是一个可怕的想法,所以这是你可以一次避免的两个坏习惯。 –
@AndyLester:包含除基本拉丁字母,数字0-9,美元,下划线以外的ASCII字符的标识符也需要引号。或者仅由数字组成。 –
eggyal