我需要帮助来确定我的代码有什么问题。我有这样的代码
<?php
include('./config/db.php');
if(isset($_POST['btnSubmit'])){
$p1 = mysqli_real_escape_string($db,$_POST['txtp1']);
$p2 = mysqli_real_escape_string($db,$_POST['txtp2']);
$p3 = mysqli_real_escape_string($db,$_POST['txtp3']);
$p4 = mysqli_real_escape_string($db,$_POST['txtp4']);
$p5 = mysqli_real_escape_string($db,$_POST['txtp5']);
$p6 = mysqli_real_escape_string($db,$_POST['txtp6']);
$p7 = mysqli_real_escape_string($db,$_POST['txtp7']);
$p8 = mysqli_real_escape_string($db,$_POST['txtp8']);
$p9 = mysqli_real_escape_string($db,$_POST['txtp9']);
$p10 = mysqli_real_escape_string($db,$_POST['txtp10']);
$p11 = mysqli_real_escape_string($db,$_POST['txtp11']);
$p12 = mysqli_real_escape_string($db,$_POST['txtp12']);
$p13 = mysqli_real_escape_string($db,$_POST['txtp13']);
$p14 = mysqli_real_escape_string($db,$_POST['txtp14']);
$p15 = mysqli_real_escape_string($db,$_POST['txtp15']);
$p16 = mysqli_real_escape_string($db,$_POST['txtp16']);
$p17 = mysqli_real_escape_string($db,$_POST['txtp17']);
$p18 = mysqli_real_escape_string($db,$_POST['txtp18']);
$p19 = mysqli_real_escape_string($db,$_POST['txtp19']);
$p20 = mysqli_real_escape_string($db,$_POST['txtp20']);
$p21 = mysqli_real_escape_string($db,$_POST['txtp21']);
$p22 = mysqli_real_escape_string($db,$_POST['txtp22']);
$sql =
"
START TRANSACTION;
INSERT INTO `kualitas_produk`(`responden`,`p1`,`p2`,`p3`,`p4`,`p5`,`p6`,`p7`,`p8`,`p9`) VALUES ('','$p1','$p2','$p3','$p4','$p5','$p6','$p7','$p8','$p9');
SELECT LAST_INSERT_ID() INTO @LASTID;
INSERT INTO `harga_produk`(`responden`,`p10`,`p11`,`p12`) VALUES (@LASTID,'$p10','$p11','$p12');
INSERT INTO `keputusan_pembelian`(`responden`,`p13`,`p14`,`p15`,`p16`,`p17`,`p18`,`p19`,`p20`,`p21`,`p22`) VALUES (@LASTID, '$p13','$p14','$p15', '$p16','$p17','$p18', '$p19','$p20','$p21', '$p22');
INSERT INTO `recap`(`responden`,`kualitas`,`harga`,`keputusan`) VALUES ('',@LASTID,@LASTID,@LASTID);
COMMIT;
";
此时,我收到了此错误
错误:您的SQL语法出错;检查与您的MariaDB服务器版本对应的手册,以便在“INSERT INTO
kualitas_produk
(responden
,p1
,p2
,p3
附近使用正确的语法,第2行p4
,p5
,p6
,p7
,“p8”
这里我如何执行查询
mysqli_query($db,$sql) or die("Error: ".mysqli_error($db));
echo "Data Berhasil Ditambahkan";
mysqli_close($db);
我已经尝试为错误返回$ sql variabel,然后在phpmyadmin上手动复制粘贴,代码完全没有错误。
有人可以找出问题所在吗?任何帮助将不胜感激
M.KHALID解决了评论BELLOW。谢谢你。
答案 0 :(得分:0)
您不能一次向mysqli_query
发送多个SQL语句。
multi_query
是一个安全漏洞;你最好每个语句使用mysqli_query
。它可以让你更好地检查错误。