php多维数组选择框mysql插入

php多维数组选择框mysql插入,php,Php,我有以下html代码: <select id="users_list" data-placeholder="Choose a user..." multiple name="users_list[]"> <?php while($users = mysql_fetch_array($all_users)){ ?> <option value='<?php echo serialize(arra

我有以下html代码:

<select id="users_list" data-placeholder="Choose a user..." multiple name="users_list[]">

        <?php while($users = mysql_fetch_array($all_users)){ ?>

                        <option value='<?php echo serialize(array($users['id_user'], $users['name'], $users['image_url'])); ?>' <?php if($users['id_user'] == $_SESSION['user_id']) echo "disabled"; ?>><?php echo $users['name']; ?></option>

        <?php } ?>

</select>

这不对,我需要另外一个PHP代码来执行操作。请提供帮助。

我会首先检查数据是否正确未序列化。。是的,它已正确序列化。)
serialize()
返回可能包含换行符和空字节等内容的二进制字符串。您不应该在HTML环境中更改输出。您最好将用户ID发送到
并检索数据服务器端的其余部分。您的
INSERT
查询指定了八列,但只提供了六个值。是的,直到有人将无效的序列化数据发布到您的页面,此脚本才会失败。
$users_list = $_POST['users_list'];
foreach($users_list as $user)
{
    $user = unserialize($user);
    foreach($user as $info){
    }
        $query = "INSERT INTO messages (from_user, to_user, text, sender_name, sender_image, recipant_name, recipant_image, date) VALUES ('$uid', '$user', '$message', '$uname', '$uimage', '$time')";
    $insert = mysql_query($query);
    $mid = mysql_insert_id();
    update_user_notf($user, $uid, $uname, $uimage, $mid, "message");
}