0

我正在尝试将 $_SESSION['user_id'] 添加到数据库中,当我在此函数中回显它时,它工作正常。但是,当我尝试将其推送到我的 MySQL 数据库中时,它会添加值 0。真的很困惑为什么。谢谢你的帮助!

function fill_team() {
    $i = 1;
    while ($i < 24) {
        $first_name = first_name();
        $last_name = second_name();
        echo "<br>";
        $add_names = mysql_query("INSERT INTO `players` (`first_name`, `last_name`, `user_id`) VALUES ('$first_name', '$last_name', '.$_SESSION['user_id']'.)");
        $i++;
    }
}
4

2 回答 2

0

SQL 语句中有一些混乱的混合引用:

mysql_query("INSERT INTO `players` (`first_name`, `last_name`, `user_id`) 
VALUES ('$first_name', '$last_name', '.$_SESSION['user_id']'.)");

在我的脑海中,我不知道这会产生什么 SQL,但这应该写成:

mysql_query("INSERT INTO `players` (`first_name`, `last_name`, `user_id`) 
VALUES ('$first_name', '$last_name', '$_SESSION[user_id]')");

或者

mysql_query("INSERT INTO `players` (`first_name`, `last_name`, `user_id`) 
VALUES ('$first_name', '$last_name', '".$_SESSION['user_id']."')");
于 2013-08-12T16:12:17.443 回答
0

替换echo $row2['first_name'];与return $row2['first_name'];. 如果你想从函数中获取一些值,你应该使用return运算符将​​值传回。print它与使用or打印值无关echo

于 2013-08-12T15:46:16.673 回答