需要一些帮助,不断得到语法错误,不能为我的生活找到错误。代码和变量正在用于其他查询和表/ dbs。
错误消息
找到数据库! 问题更新记录。 MySQL错误:您的SQL语法有错误;查看与MySQL服务器版本对应的手册,以便在'SET LastName ='dfm'附近使用正确的语法,在第2行WHERE StudentID ='123'
码
if (!empty($_POST['modify']))
{
$connection = mysqli_connect("xxxxx","xxxx","xxxxx");
// Check connection
if (!$connection)
{
echo "Connection failed: " . mysqli_connect_error();
}
else
{
//select table
$dbName="spr14_aglic006";
mysqli_select_db($connection,$dbName) or die(mysqli_error());
echo "Database Found! <br>";
下面的语法错误
$query =("UPDATE students
SET FirstName='".$_POST['firstName']."', LastName='".$_POST['lastName']."',
WHERE StudentID='".$_POST['PID']."'");
上面的语法错误
$res = mysqli_query($connection,$query);
if ($res)
{
echo "<p>Record Updated<p>";
}
else
{
echo "Problem updating record. MySQL Error: " . mysqli_error($connection);
}
}
mysqli_close($connection);
}
任何帮助?
答案 0 :(得分:2)
查询应为
$query =("UPDATE students
SET FirstName='".$_POST['firstName']."', LastName='".$_POST['lastName']."'
WHERE StudentID='".$_POST['PID']."'");
你有
SET FirstName='".$_POST['firstName']."', LastName='".$_POST['lastName']."', <--
您的查询也是SQL注入的潜力
您在查询中直接使用$ _POST数据,而是使用PDO。
答案 1 :(得分:2)
删除WHERE之前的逗号
$query =("UPDATE students SET FirstName='".$_POST['firstName']."', LastName='".$_POST['lastName']."' WHERE StudentID='".$_POST['PID']."'");
答案 2 :(得分:1)
SET LastName='dfm', WHERE StudentID='123''
^
你有一个流氓逗号。