我在更新部分脚本时遇到了一些问题。
我有一个网页,用户可以在每个用户旁边标记复选框,他们希望通过其他用途“回收”。
我将用户ID存储在如下数组中:
$refsid= explode(',',$_POST['referralIds']);
$users->_recycleMulti($membershipData['recycle_price'], $userdata['username'], $refsid);
然后,在我的_recycleMulti
函数中,我希望进行实际的回收。是否只是一个已被选中的用户,或者10.因此,我使用的是for loop.
但它仍然只是更新一个用户。
我的_recycleMulti函数如下所示:
function _recycleMulti($value, $username, $referrals_array){
for($i=0; $i < count($referrals_array); $i++){
mysql_query("do the update here");
}
return "success!";
}
var_dump($_POST['referralIds']);
正在返回:
string(3) "4,5"
这是正确的,因为我检查了两个复选框。 ID与数据库中的ID匹配。
var_dump($refsid); is returning:
array(2) { [0]=> string(1) "4" [1]=> string(1) "5" }
我做错了什么?
答案 0 :(得分:0)
您可以将for循环更改为foreach,尽管它不会对执行产生影响
foreach ($referrals_array as $refid) {
echo "Updating referral ".$refid.".<br>\n";
// execute SQL code here using $refid value
}
可能会帮助您查看正在执行的内容,或者如果这些内容不能正常运行,请回显您的SQL语句,并确保它正在按照您的想法执行操作。