【问题标题】:I am trying to dynamically insert data in mysql using php and i am getting syntax error我正在尝试使用 php 在 mysql 中动态插入数据,但出现语法错误
【发布时间】:2015-10-22 22:01:25
【问题描述】:

这是我正在使用的查询:

$z = "INSERT INTO
       `ingridients`(`recipe_id`, `name`,`quantity`,`unit`)
       VALUES ('{$newid}','{${"igname".$j}}','{${"igq".$j}}','{${"igu".$j}}')";

我收到语法错误。

【问题讨论】:

  • 您遇到了哪种语法错误?
  • 你在双引号中使用双引号。这是不允许的。您必须连接字符串,或者最好使用准备好的语句。
  • 花括号无处不在。
  • 我明白了 你的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 ')' 附近使用正确的语法
  • $z = "INSERT INTO ingridients(recipe_id, name,quantity,unit) 值 (".$newid.",".${"igname" .$j}.",".${"igq".$j}.",".${"igu".$j}.")";这就是我现在使用的,但仍然是同样的错误

标签: php mysql syntax-error insert-query


【解决方案1】:

改变

$z = "INSERT INTO ingridients(recipe_id, name,quantity,unit) VALUES ('{$newid}','{${"igname".$j}}','{${"igq".$j}}','{${"igu".$j}}')";

进入

$z = "INSERT INTO ingridients(recipe_id, name,quantity,unit) VALUES ( '$newid','$igname.$j','$igq.$j','$igu.$j' )";

更新

<?php

    for($j = 1; $j <= 25; $j++)
    {
        $igname.$j = $_POST['igname'.$j];
        $igq.$j = $_POST['igq'.$j];
        $igu.$j = $_POST['igu'.$j];
        if($igname.$j != "")
        {
            $z = "INSERT INTO ingridients(recipe_id, name,quantity,unit) VALUES ( '$newid','$igname.$j','$igq.$j','$igu.$j' )";
            $z = mysql_query($z);
        }
    }

?>

【讨论】:

  • 这会在数据库中插入一些垃圾数据而不是该变量中的数据
  • @Niraj 您从哪里获取数据? $igname 中有什么内容?
  • FORM 和 $igname 不是单独的变量 for($j=1;$jingridients(recipe_id, name,quantity,unit) 值 ($newid,${"igname".$j}, ${"igq".$j},${"igu".$j})"; //$z = "INSERT INTO ingridients(recipe_id, name,quantity,unit) 值 (".${"igname".$j}.",".${"igname ".$j}.",".${"igq".$j}.",".${"igu".$j}.")"; $z = mysql_query($z);
【解决方案2】:

尝试使用以下代码

   $z = "INSERT INTO
   ingridients(recipe_id, name,quantity,unit)
   VALUES ('".$newid."','".$igname.$j."','".$igq.$j."','".$igu.$j."')";

【讨论】:

    猜你喜欢
    • 2020-08-22
    • 2019-10-30
    • 2021-08-04
    • 1970-01-01
    • 1970-01-01
    • 2022-11-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多