1

PHPを使用していて、MySQLデータベースにアイテムを追加しようとしています。

次のコードを使用すると、機能します。

 mysql_query("INSERT INTO `intranet`.`product_form` (`id`, `ProductName`, `ProductInitiatedBy`) VALUES (NULL,  'item1', 'item2')") or die("Could not perform select query - " . mysql_error());;

ただし、次のコードを使用すると機能しません。

$product_name=("tom"); 
mysql_query("INSERT INTO `intranet`.`product_form` (`id`, `ProductName`, `ProductInitiatedBy`) VALUES (NULL,  $product_name, 'item2')") or die("Could not perform select query - " . mysql_error());;

次のようなエラーが発生します。

選択クエリを実行できませんでした-「フィールドリスト」の不明な列「ProductName1234」

ProductName1234からのデータで$product_nameあり、列ではなく、追加しようとしているデータである必要があります。

4

2 に答える 2

4

このような文字列を挿入するときは、引用符で囲む必要があります。そうしないと、MySQLは、データを挿入する場所から列を指定しようとしていると見なします。

mysql_query("INSERT INTO intranet.product_form (id, ProductName, ProductInitiatedBy) VALUES (NULL, \"$product_name\", 'item2')");
于 2012-07-16T00:12:18.860 に答える
3

変化する:

mysql_query("INSERT INTO `intranet`.`product_form` (`id`, `ProductName`, `ProductInitiatedBy`) VALUES (NULL,  $product_name, 'item2')") or die("Could not perform select query - " . mysql_error());;

に:

mysql_query("INSERT INTO `intranet`.`product_form` (`id`, `ProductName`, `ProductInitiatedBy`) VALUES (NULL,  '$product_name', 'item2')") or die("Could not perform select query - " . mysql_error());

'に追加する必要があります$product_name

VALUES (NULL,  '$product_name', 'item2')
               ^             ^
于 2012-07-16T00:12:34.397 に答える