【发布时间】:2013-05-01 17:58:03
【问题描述】:
这可能是一个简单的问题,但我没有处理好。这是我的复选框,如下所示:
<input name="msg_id[]" type="checkbox" id="msg3" value="3" />
<input name="msg_id[]" type="checkbox" id="msg2" value="2" />
<input name="msg_id[]" type="checkbox" id="msg1" value="1" />
<input name="msg_id[]" type="checkbox" id="msg15" value="15" />
<input name="msg_id[]" type="checkbox" id="msg14" value="14" />
我正在使用这样的 $.post 方法发布值:
$('body').on('click', '#not_read', function () {
var inputs = $("input[name='msg_id[]']").serialize();
$.post("user.php", {"not_read":1,"message_ids":inputs}, function(z) {$("#result").html(z)});
});
我想将检查的值发送到 user.php 并使用 foreach 循环我想更新检查消息的阅读状态。如下图..
if (isset($_POST['not_read'])):
if (intval($_POST['not_read']) == 0 || empty($_POST['not_read'])):
redirect("index.php");
endif;
/* I don't know what I must write here.
$values = $_POST['message_ids'];
foreach($values as $row):
mysql_query("UPDATE messages SET read='0'WHERE id='".$row["id"]."'");
endforeach;
# Sure, it is not working...
*/
endif;
亲切的问候...
【问题讨论】:
-
print_r($_POST);给你什么? (1:如果您勾选某些选项 2:如果您不勾选?) -
当我写 print_r($_POSt) 时,它给了我 Array ( [not_read] => 1 [message_ids] => msg_id%5B%5D=4&msg_id%5B%5D=3&msg_id%5B%5D =2)。
-
所以在 jquery 中使用
serializeArray()和在 php 中$values=json_decode($_POST['message_ids']); -
很好,你能写 foreach 循环吗?我不明白。
标签: php jquery serialization