最近我复制了一个PHP脚本,将其用于另一个数据库。在我正确编辑了所有单词和链接后,我得到了一个奇怪的错误。
SELECT naam, aantal, prijs
FROM boeken, bestelling
WHERE boeken.Boekcode = bestelling.Boekcode
AND bestelling.Boekcode IN ('101','102')
AND bestelnummer = 3;
这不是一个像
这样的常规错误Error on line 42
基本上代码的作用是,当您订购书籍并填写表格(姓名,姓氏,电子邮件等)时,它会将其放入数据库中。然后将其放在“thankyou.html”页面中。
以下是导致此
的代码的一部分mysqli_query($con, $query) or die($query . "<br>");
$bestelnummer = MYSQLI_INSERT_ID($con);
$object = array_filter($object);
$objectnaam = join("','",array_keys($object));
$object = http_build_query($object);
$object = str_replace('=', ',', $object);
$object = str_replace('&', "),($bestelnummer,", $object);
$query = "INSERT INTO bestelling (bestelnummer, Boekcode, aantal) VALUES ($bestelnummer,$object)";
$result = mysqli_query($con, $query) or die($query."<br>");
$aantal = "SELECT naam, aantal, prijs FROM boeken, bestelling WHERE boeken.Boekcode = bestelling.Boekcode AND bestelling.Boekcode IN ('".$objectnaam."') AND bestelnummer = $bestelnummer";
$result = mysqli_query($con, $aantal) or die($aantal . "<br>");
$res = mysqli_fetch_all($result);
$prijs = 0;
$ object是您选择的图书数组。
我已经谷歌解决了这个问题,是的,我有Apache和一切都已启用。
对不起,如果我不清楚,已经有一段时间了,我可以回答你的任何问题。
答案 0 :(得分:1)
如果查询失败,你就会回显查询。
$aantal = "SELECT naam, aantal, prijs FROM boeken, bestelling WHERE boeken.Boekcode = bestelling.Boekcode AND bestelling.Boekcode IN ('".$objectnaam."') AND bestelnummer = $bestelnummer";
$result = mysqli_query($con, $aantal) or die($aantal . "<br>");
您可能希望使用mysqli_error()检查从数据库返回的错误消息。
$result = mysqli_query($con, $aantal) or die(mysqli_error() . "<br>");
答案 1 :(得分:0)
首先需要改进
$query = "INSERT INTO bestelling (bestelnummer, Boekcode, aantal) VALUES ($bestelnummer,$object)";
您正在为3列选择值插入并仅传递两个值
对于第二个查询,请尝试对表名和列
使用反引号