【问题标题】:PHP insert into database queryPHP插入数据库查询
【发布时间】:2026-01-29 10:55:01
【问题描述】:

我正在尝试向数据库表中插入值,插入了一行,但没有插入任何值。只有 order_id 是自动递增的主键。

php代码:

<?php
        $user_get = mysql_query("SELECT * FROM users"); 
        while($row_user = mysql_fetch_assoc($user_get)){
            if($row_user['username'] == $_SESSION['username']){
                $row_user['first_name'] = $res1;
                $row_user['last_name'] = $res2;

                $store_order ="INSERT INTO oko (user, product) VALUES ('$res1', '$res2')";
                mysql_query($store_order);
            }
        }
?>

【问题讨论】:

  • 你确定 $res1 和 $res2 有值吗?在执行查询之前打印 $store_order;
  • LOL 似乎你很难从提供的三个答案中选择正确的答案:D
  • :我知道疯狂的选择:D
  • 也喜欢我的问题:P

标签: php mysql


【解决方案1】:

你的作业倒退了。我想你的意思是:

$res1 = $row_user['first_name'];
$res2 = $row_user['last_name'];

【讨论】:

    【解决方案2】:

    你不是说:

    $res1 = $row_user['first_name'];
    $res2 = $row_user['last_name'];
    

    您还可以更新 SELECT 以拥有一个检查 $_SESSION['username'] 的 WHERE 子句。

    你可以只做一个插入/选择:

    INSERT INTO oko (user, product)
    SELECT
        first_name, last_name
    FROM
        users
    WHERE
        username = '$_SESSION["username"]'
    

    您的代码容易被注入。您应该对 PDO/mysqli 使用正确的参数化查询

    【讨论】: