Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php文件中的语法错误和未知错误_Php_Mysql - Fatal编程技术网

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' ";