Php 'SQLSTATE[HY093],我把逗号放错了吗?
我的代码基本上是在运行。我似乎总是一次又一次地犯同样的错误。我想是因为我把逗号放错了,但我不知道。有人能帮我处理这个代码吗Php 'SQLSTATE[HY093],我把逗号放错了吗?,php,mysql,Php,Mysql,我的代码基本上是在运行。我似乎总是一次又一次地犯同样的错误。我想是因为我把逗号放错了,但我不知道。有人能帮我处理这个代码吗 <?php $db_server = "localhost"; $db_username = "root"; $db_password = ""; $db_database = "meubelfabriek"; $conn = new PDO("mysql:host=$db_server;dbname=$db_database"
<?php
$db_server = "localhost";
$db_username = "root";
$db_password = "";
$db_database = "meubelfabriek";
$conn = new PDO("mysql:host=$db_server;dbname=$db_database", $db_username, $db_password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
if(isset($_POST['submit']))
{
$prijs = $_POST['prijs'];
$naam = $_POST['fname'];
$beschrijving = $_POST['desc'];
$maat1 = $_POST['maat1'];
$maat2 = $_POST['maat2'];
$maat3 = $_POST['maat3'];
$maat4 = $_POST['maat4'];
$imageName = $_FILES["image"]["name"];
$imageData = file_get_contents($_FILES["image"]["tmp_name"]);
$imageType = $_FILES["image"]["type"];
if(substr($imageType,0,5)=="image")
{
$stmt = $conn->prepare("INSERT INTO producten ( naam, beschrijving, prijs, maat1, maat2, maat3, maat4, namen, image ) VALUES ( :naam, :beschrijving, :prijs, :maat1, :maat2, :maat3, maat4,'$imageName', " . $conn->quote($imageData) . ")");
$stmt->execute(array(":naam"=>$naam, ":beschrijving"=>$beschrijving, ":prijs"=>$prijs, ":maat1"=>$maat1, ":maat2"=>$maat2, ":maat3"=>$maat3, ":maat4"=>$maat4));;
}
else
{
echo "Oops, something went wrong!";
}
}
?>
这行中有一个额外的分号:
$stmt->execute(array(":naam"=>$naam, ":beschrijving"=>$beschrijving, ":prijs"=>
$prijs, ":maat1"=>$maat1, ":maat2"=>$maat2, ":maat3"=>$maat3, ":maat4"=>$maat4));; <--
你错过了一个::
问题在于If语句
$stmt = $conn->prepare("INSERT INTO producten ( naam, beschrijving, prijs, maat1, maat2, maat3, maat4, namen, image ) VALUES ( :naam, :beschrijving, :prijs, :maat1, :maat2, :maat3, maat4,'$imageName', " . $conn->quote($imageData) . ")");
$stmt->execute(array(":naam"=>$naam, ":beschrijving"=>$beschrijving, ":prijs"=>$prijs, ":maat1"=>$maat1, ":maat2"=>$maat2, ":maat3"=>$maat3, ":maat4"=>$maat4));;
添加双引号。删除一个。提供完整的错误详细信息插入查询AT4中,将其替换为:maat4并重试
$stmt = $conn->prepare("INSERT INTO producten ( naam, beschrijving, prijs, maat1, maat2, maat3, maat4, namen, image ) VALUES ( :naam, :beschrijving, :prijs, :maat1, :maat2, :maat3, maat4,'$imageName', " . $conn->quote($imageData) . ")");
$stmt->execute(array(":naam"=>$naam, ":beschrijving"=>$beschrijving, ":prijs"=>$prijs, ":maat1"=>$maat1, ":maat2"=>$maat2, ":maat3"=>$maat3, ":maat4"=>$maat4));;