什么';这个$_POST和sql代码有问题


what's wrong with this $_POST and sql code?

以下代码运行良好,但不会更新mysql数据库。

sql查询不是问题,因为我注释掉了if语句,MySQL数据库更新得很好。它与$_POST数组有关。我有一种感觉,当我把$row["id"]放入$_POST数组时,它不会很好地进入。

if (isset($_POST["
         {$row["id"]}
         "]) && !empty($_POST["
                      {$row["id"]}
                      "])){
  print_r($_POST);
 $food_id = $_POST[$row["id"]];

 $query = "INSERT INTO `users_foods`
VALUES('','1','7','','','','')";
//$_SESSION['user_id']
   $query_run = mysql_query($query);
}

我认为报价有问题

isset($_POST["{$row["id"]}"]错误,您可能想要:

  • isset($_POST[$row["id"]]
  • isset($_POST[{$row["id"]}]
  • isset($_POST["{$row['"id'"]}"](使用scape标记引号是字符串的一部分)

但我想你正在寻找第一个

if语句中的引号。。。尝试使用
    $_POST[row["id"]];
{$row["id"]}

应该是

{$row['id']}