Php 将textfield值绑定到数组并放入数据库

Php 将textfield值绑定到数组并放入数据库,php,mysql,Php,Mysql,我正在制作一个简单的私人混乱系统。当用户发送消息时,他/她必须填写三个字段:“收件人”、“主题”和“消息”。在“收件人”字段中,用户可以输入用户名以将其消息发送到。然后,使用mySql(phpmyadmin),我尝试从users表中获取相应的user_id。 例如,用户id“1”的用户名为“testing”。当用户在“to”字段中键入“testing”时,“我的代码”会在用户表中搜索用户名为“testing”的用户,并获取相应的用户id。 获取用户id后,它将用户id放入conversation

我正在制作一个简单的私人混乱系统。当用户发送消息时,他/她必须填写三个字段:“收件人”、“主题”和“消息”。在“收件人”字段中,用户可以输入用户名以将其消息发送到。然后,使用mySql(phpmyadmin),我尝试从users表中获取相应的user_id。 例如,用户id“1”的用户名为“testing”。当用户在“to”字段中键入“testing”时,“我的代码”会在用户表中搜索用户名为“testing”的用户,并获取相应的用户id。 获取用户id后,它将用户id放入conversations\u members表中

我的问题是代码确实采用了正确的用户id(我通过打印数组检查了这一点),但它没有将正确的用户id放入表中。它总是0

请参阅下面的代码,这里我将user\u id添加到数组$user\u id

   else if(!empty($_POST['to'])){
        $stmt = $db->prepare("SELECT user_id FROM user WHERE user_name = :user_name");
        $stmt->bindValue(':user_name', $_POST['to'], PDO::PARAM_STR);
        $stmt->execute();

        $result = $stmt->fetch(PDO::FETCH_ASSOC);
        if ($result) {
            $user_ids['user_id'] = $result['user_id'];
        }
请参阅下面的代码,这里我尝试将用户id添加到表中

$sql4 = $db->prepare("INSERT INTO conversations_members
                    (conversation_id, user_id, conversation_last_view, conversation_deleted) 
                    VALUES (:conid, :usid, :clv, :condel)");
$sql4->execute(array(
    "conid" => "{$conversation_id}",
    "usid" => "{$user_ids[0]['user_id']}",
    "clv" => "0",
    "condel" => "0"
    ));
我真的希望有人能帮忙,我已经挣扎了几个小时了:(
提前感谢!!

为什么要将用户id存储在关联数组中而不是简单的变量中?为什么要将变量(例如)
$user\u id[0]['user\u id']
包装在字符串中?在任何情况下……如果您使用
$user\u id['user\u id']
分配值,则无法通过执行
$user\u id[0]['user\u id']
。进行
打印($user\u id);
并查看该数组中的位置。我猜您正在错误地处理它。注意:不必要的绒毛
“conid”=>“{$conversation\u id}”,
身份写入“conid”=>$conversation\u id,