Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.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 从MySQL数据库中删除记录_Php_Mysql - Fatal编程技术网

Php 从MySQL数据库中删除记录

Php 从MySQL数据库中删除记录,php,mysql,Php,Mysql,我对MySQL没有太多的经验,所以很有可能我遗漏了一些非常明显的东西 我只是尝试从表中删除一条记录,其中from_=neighbor和to_=id或from_=id和to_=neighbor。问题是记录永远不会被删除 基本的数据库设置用户名、密码等都是正确的,实际上是在一个包含文件中,我已经使用了很多次。 表的名称是正确的,我进行了三次检查。 数据库中列的名称是正确的,我进行了三次检查。 根据javascript警报测试,我知道脚本正在接收id和邻居,并且我知道收到的特定整数与我三次检查的数据库

我对MySQL没有太多的经验,所以很有可能我遗漏了一些非常明显的东西

我只是尝试从表中删除一条记录,其中from_=neighbor和to_=id或from_=id和to_=neighbor。问题是记录永远不会被删除

基本的数据库设置用户名、密码等都是正确的,实际上是在一个包含文件中,我已经使用了很多次。 表的名称是正确的,我进行了三次检查。 数据库中列的名称是正确的,我进行了三次检查。 根据javascript警报测试,我知道脚本正在接收id和邻居,并且我知道收到的特定整数与我三次检查的数据库中的记录匹配。 这是我正在使用的代码:

 $dbhost = "..."; 
 $dbuser = "...";
 $dbpass = "...";
 $dbname    = "...";

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ("Error connecting to mysql");
    mysql_select_db($dbname);

$id = mysql_real_escape_string($_GET['id']);
$neighbor = mysql_real_escape_string($_GET['neighbor']);
$result = mysql_query("DELETE FROM jointable WHERE to_='". $id ."' AND from_='".$neighbor."'") or die(mysql_error()); 
$result = mysql_query("DELETE FROM jointable WHERE from_='". $neighbor ."' AND to_='".$id."'") or die(mysql_error()); 
mysql_close($conn);     

echo "<script type='text/javascript'>
    alert('$id');
    alert('$neighbor');
    <!-- 
    window.location = 'index.php?node=$id';   
    //-->
    </script>";

将查询构建到单独的字符串中,然后将其转储以查看实际情况:

$sql = <<<EOL
DELETE FROM jointable
WHERE (to_ = '$id') AND (from_ = '$neighbor')
EOL;
$result = mysql_query($sql) or die(mysql_error());

die("<pre>$sql</pre> $result");

看看有没有回报。由于MySQL没有在查询中抛出错误,那么很可能是您的WHERE子句导致它找不到所需的记录。

Andreas,该记录已被nod删除。我将编辑这个问题。你得到了什么结果或错误?@John R:我修复了它,显然当你在列表后面直接添加代码时有问题。@John R:实际上,显然这不是一个错误:你在日志文件中找不到任何错误吗?您使用警报进行调试,因此可能根本不使用日志文件。。。
SELECT *
FROM jointable WHERE (to_ = '$id') AND (from_ = '$neighbor')