这是一个id问题还是我缺少什么?我试图让它删除评论...在这个'delete.php'页面上,$ prof是发送删除请求的用户,在我试图删除的页面上,$ auth是发送者评论。
<?php
require_once($_SERVER['DOCUMENT_ROOT'] . '/includes/system/init.php');
enforce_auth();
$prof = new User($_GET['id']);
$query = "UPDATE `ProfileComments` SET `status` = 'dead' WHERE `id` = '".$prof->id."' LIMIT 1";
$request = mysql_query($query,$connection);
?>
我应该在查询中替换其他变量而不是$prof->id
吗?
答案 0 :(得分:6)
我看到它的方式,我认为当你使用id来更新数据库时创建一个新对象是不合适的:)
我会这样做:
$id = $_GET['id']; <br>
mysql_query("UPDATE ProfileComments SET status = 'dead' WHERE id = '$id' LIMIT 1") or die(mysql_error());
看看是否应该这样做!
答案 1 :(得分:2)
只需输入你的申请表:
echo $query = "UPDATE ProfileComments SET status = 'dead' WHERE id = '".$prof->id."' LIMIT 1";
这将把查询输出为字符串。如果你能立即看到错误,那很好。如果没有尝试将其粘贴到phpMyAdmin
。这应该可以帮助您调试MySQL!
希望它有所帮助!
答案 2 :(得分:0)
这将转义数据并将id转换为整数,在这种情况下它应该是。
mysql_query("UPDATE ProfileComments SET status = 'dead' WHERE id = '". mysql_real_escape_string((int)$prof->id) . "' LIMIT 1");