php - 使用php从MySQL中的两个连接表中删除信息

标签 php mysql sql-delete

HTML

echo "<a href=\"delete.php?id=".$row{'idHeroes'}."\">Delete</a>";

PHP

$joinTables = "DELETE * FROM heroes,stats WHERE idHeroes = $_GET[id]";
mysql_query($joinTables);
header('Location: index.php');

当我点击按钮时,它会刷新页面但没有任何反应。

//我找到了解决方案

$deleteHeroes = "DELETE FROM heroes WHERE idHeroes = '".$_GET['id']."'";
    $deleteStats = "DELETE FROM stats WHERE idStats = '".$_GET['id']."'";
    mysql_query($deleteHeroes);
    mysql_query($deleteStats);

最佳答案

像这样重写你的查询:

  $joinTables = "DELETE * FROM heroes
                 INNER JOIN  stats WHERE 
                 WHERE heroes.idHeroes= stats.idHeroes 
                 and heroes.idHeroes = '".$_GET['id']."' ";

OBS。在您的查询中使用它之前,您必须转义您的变量,否则有人会删除您的所有列:)。

从 GET 中删除是个坏主意。

关于php - 使用php从MySQL中的两个连接表中删除信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24350296/

相关文章:

上传前 PHP 检查文件大小 - 10 字节

php mysqli 使用通配符准备语句

mysql - 根据另一个表中的记录在一个表中插入记录的 SQL 过程

sql - 如何在不让日志文件失控的情况下从大表中删除过期数据?

php - 动态更改 div 值,laravel blade 上的导航栏

mysql - Refinery cms 页面长度超过 65534 字节

mysql - 如何创建mysql数据库模式文件?

mysql - SQL 如果 A 列存在且等于 B 则从 all 中删除所有

sql - 按列对删除表中存在的行

php - 获取文件中定义的函数和类?