Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/280.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,我试图通过使用php文件从mysql数据库中删除条目,但由于某些原因,它不起作用。连接(在“connect.php”中)是有效的,因为我对SELECT语句和这些语句使用相同的文件。我只是在删除它们时遇到了麻烦。知道我做错了什么吗? 提前谢谢 <?php include "include/connect.php"; if($link === false){ die("ERROR: Could not connect. " . mysql_connect_error()); } $

我试图通过使用php文件从mysql数据库中删除条目,但由于某些原因,它不起作用。连接(在“connect.php”中)是有效的,因为我对SELECT语句和这些语句使用相同的文件。我只是在删除它们时遇到了麻烦。知道我做错了什么吗? 提前谢谢

<?php
include "include/connect.php";

if($link === false){
    die("ERROR: Could not connect. " . mysql_connect_error());
}

$word = (isset($_GET['email']) ? $_GET['email'] : null);

$sql = "DELETE * from tbl_sbs WHERE eml='" . word . "'";
$result = mysql_query($sql);
?>

除非在
WHERE
子句中使用与
SELECT
语句相同的过滤目的,否则不能使用
*
DELETE
语句的列名。应该是

$sql = "DELETE from tbl_sbs";
$sql = "DELETE FROM tbl_sbs WHERE eml='" . $word . "'";
DELETE
通用语法为

DELETE FROM TABLE_NAME WHERE COLUMN_NAME <comparison_operator> SOME_FILTER_CONDITION
错误报告会向您抛出一个未定义的常量词通知如果那不是
“.word.”
中的打字错误

*
检查错误后,会抛出以下命令:

您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,了解使用near的正确语法*

参考资料:


除非在
WHERE
子句中使用与
SELECT
语句相同的过滤目的,否则不能使用
*
删除
语句的列名。应该是

$sql = "DELETE from tbl_sbs";
$sql = "DELETE FROM tbl_sbs WHERE eml='" . $word . "'";
DELETE
通用语法为

DELETE FROM TABLE_NAME WHERE COLUMN_NAME <comparison_operator> SOME_FILTER_CONDITION
错误报告会向您抛出一个未定义的常量词通知如果那不是
“.word.”
中的打字错误

*
检查错误后,会抛出以下命令:

您的SQL语法有错误;查看与您的MySQL服务器版本对应的手册,了解使用near的正确语法*

参考资料:


并且必须在变量名(word)之前使用$


并且必须在变量名(word)之前使用$



天呐删除
*
,然后删除问题
或die(mysql\u error())
mysql\u query()
会发出我想回答的语法错误信号,但这将不再受欢迎*另外,错误报告会给您一个未定义的常量词通知;如果那不是一个打字错误的话。@Fred ii-是的,当我编辑这篇文章时,那是一个打字错误。多年前,我曾经信任一个我认为是很好朋友的人。这个故事的寓意是:永远不要放松警惕。甚至你自己的妈妈/爸爸也可能(意外地/不知不觉地)给你发送病毒;-)编辑:想想“匿名”。他们甚至入侵了我们自己的政府网络,这也是一个“封闭的私人网络”。哟!!!删除
*
,然后删除问题
或die(mysql\u error())
mysql\u query()
会发出我想回答的语法错误信号,但这将不再受欢迎*另外,错误报告会给您一个未定义的常量词通知;如果那不是一个打字错误的话。@Fred ii-是的,当我编辑这篇文章时,那是一个打字错误。多年前,我曾经信任一个我认为是很好朋友的人。这个故事的寓意是:永远不要放松警惕。甚至你自己的妈妈/爸爸也可能(意外地/不知不觉地)给你发送病毒;-)编辑:想想“匿名”。他们甚至入侵了我们自己的政府网络,这也是一个“封闭的私人网络”。我编辑了我的代码,在delete语句中加入了一个条件。在这种情况下需要“*”吗?不需要,只需在其中添加
WHERE
@IrinaAvram@IrinaAvram不,从来没有。再次查看答案中的编辑。谢谢!我会在8分钟内接受你的回答@IrinaAvram,这不是必需的,因为类似于DML的insert/update/delete在成功后会执行隐式提交,但如果您使用事务块手动处理它,则必须执行单独的提交/回滚。我编辑了代码,以便在delete语句中包含一个条件。在这种情况下需要“*”吗?不需要,只需在其中添加
WHERE
@IrinaAvram@IrinaAvram不,从来没有。再次查看答案中的编辑。谢谢!我会在8分钟内接受你的回答@IrinaAvram,这不是必需的,因为类似于DML的insert/update/delete在成功后会执行隐式提交,但如果您使用事务块手动处理,则必须执行单独的提交/回滚。您必须检查
delete
语句的完整语法。OP说这是一个输入错误,但你确实回答了他们最初发布的内容。“而且你必须在变量名(word)之前使用$,否则它将被视为常量。你必须检查
DELETE
语句的完整语法。OP说这是一个拼写错误,但你确实回答了他们最初发布的内容。”你必须在变量名(word)之前使用$-否则它将被视为常数。