php文件中的语法错误和未知错误
我试图从我的数据库中删除一个php文件中的语法错误和未知错误,php,mysql,Php,Mysql,我试图从我的数据库中删除一个库存项目,但我一直收到这个错误,我不知道如何修复它。有什么想法吗 这就是错误: “删除的详细信息如下: 注意:未定义索引:第17行项目描述中的/var/www/vhosts/c2agolf.candept.com/httpdocs/Conor/test/delete/delete.php中的项目描述: SQL查询中出现错误:您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以了解在第1行的“delete”=1附近使用的正确语法,其中itemdescri
库存项目
,但我一直收到这个错误,我不知道如何修复它。有什么想法吗
这就是错误:
“删除的详细信息如下:
注意:未定义索引:第17行项目描述中的/var/www/vhosts/c2agolf.candept.com/httpdocs/Conor/test/delete/delete.php中的项目描述:
SQL查询中出现错误:您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以了解在第1行的“delete”=1附近使用的正确语法,其中itemdescription='Array[itemdescription]'
这是我的密码:
<head>
<link rel = "stylesheet" type = "text/css" href = "deletestock.css">
<link href='http://fonts.googleapis.com/css?family=Raleway' rel='stylesheet' type='text/css'>
</head>
<body>
<div id = "content">
<div class = "transBox">
<input type = "button" id = "MenuBtn" value = "Menu" onClick = "window.location = 'c2agolf.candept.com/menu.html';">
<?php
include("dbconnect.php");
$sql = "UPDATE Stock SET 'delete' = 1 WHERE itemdescription = '$_POST [itemdescription]' ";
echo "The details deleted are as follows: <br>";
echo "<label><b>Item Description : </b> " . $_POST['itemdescription'] . "<br></label>";
if(!mysql_query($sql,$conn))
{
die("There was an error in the SQL Query: " . mysql_error());
}
echo "<script> alert('The stock has been deleted'); </script>";
mysql_close($conn);
?>
<form action = "delete.html.php" method = "POST">
<br>
<input type = "submit" value = "Return to Insert Page">
</form>
$\u POST
和[itemsdescription]
之间有一个空格。。。“delete”是一个关键字,如果用作列名,则应使用反勾号进行转义
尝试更改:
$sql = "UPDATE Stock SET 'delete' = 1 WHERE itemdescription = '$_POST [itemdescription]' ";
致:
或:
我建议您学习mysqli或PDO而不是mysql,因为mysql已经过时,很快就会被弃用。首先,请删除:$\u POST[itemsdescription]
中的空格以获取$\u POST[itemsdescription]
提示:另外,带有itemsdescription
的name属性的表单元素在哪里?这使得给你一个具体的/明确的答案/解决方案变得更加困难。很好的理解,我确实错过了如果字段名为“delete”(这是一个关键字),那么“delete”应该被反勾选,而不是单引号引用……过一段时间,你就会知道那些保留字是什么;-)另外,语法错误是显而易见的。是的,我做了“假设”的事情,并假设它们是反勾号,我们知道“假设”会导致LOLOP,就像其他人一样,可能一直在看视频教程,而且勾号类似于引号,所以他们会误认为它们是反勾号。这是一个经常犯的错误。
$sql = "UPDATE Stock SET `delete` = 1 WHERE itemdescription = '" . $_POST['itemdescription'] . "' ";
$itemdescription = $_POST['itemdescription'];
$sql = "UPDATE Stock SET `delete` = 1 WHERE itemdescription = '$itemdescription' ";