我想使用php将阵列插入mysql db。
现在我收到此代码错误:
$insert_sql = sprintf("INSERT INTO detail_paket (id_paket, menu_paket) select
paket.id,\'%s\' from paket where paket.nama_paket='$nama_paket'",%data1[$i]);
^
|
here is the error syntax
data1是数组。
使用\'%s \'的正确语法是什么?
当我尝试运行查询时,错误信息显示:语法错误,意外的'%'输入或语法错误意外的“”输入*。
我已经尝试使用\“%s \和\”%s“ \\和%s和'%s'和”%s“和\”%s \“,但是查询仍然给我错误。
最后一个问题,这个'%s'语法叫什么?
谢谢...
来自教程的原始查询
$insert_sql = sprintf("INSERT INTO student (first_name, last_name) VALUES(\"%s\",\"%s\")",
$student_record[$i][0], $student_record[$i][1]);
最佳答案
删除%
周围的引号,并将%
的data1
前缀更改为$
:
$insert_sql = sprintf("INSERT INTO detail_paket (id_paket, menu_paket) select paket.id,%s from paket where paket.nama_paket='$nama_paket'",$data1[$i]);
另一个问题是您需要使用
;
分隔两个查询。这不适用于所有MySQL API,并非所有API都允许多个查询。您可能需要运行两个查询,而不是单个多个查询。关于php - 插入带有\“%s\错误MYSQL PHP的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13580081/