-2

好吧,我的代码有问题:

if ($_POST) { 
//send confirmation email (or insert into database, etc...) 

if(isset($_POST['del'])) {

    $Link = $_POST['del_link'];

    $query = "UPDATE comentarios SET del = '1' WHERE id = '".$Link."'";
    mysql_query($query) or die ('Error: ' . mysql_error());
    //header('Location: http://google.es'); //For debug    
   }    
}

echo '<form name="del" method="post">
<input type="hidden" name="del_link" value="'.$rowComen['id'].'" />
<a href="#" onclick="get_form(this).submit(); return false;">Delete</a>
</form>';

但是当我按下链接时,网络会刷新,仅此而已......

我曾尝试过:header('Location: http://google.es');但我不重定向到谷歌......

而且我不知道问题是在帖子中还是在查询中......

4

2 回答 2

1
 if(isset($_POST['del'])) {

你似乎没有del表单域。所以这个 if 语句中的代码永远不会被执行。我认为您正在尝试检查 del_link。所以让它成为if(isset($_POST['del_link'])) {

于 2013-10-19T14:58:35.907 回答
1

您是否在浏览器中检查过它是否包含正确的值?表单将包含确切的值'.$rowComen['id'].',除非 PHP 代码的一部分丢失并且表单实际上在字符串中。

[编辑]

我懂了。表单的名称是“del”,但从不发送该名称。将提交按钮的名称设为“del”,或添加另一个隐藏元素。更简单:只需检查是否存在del_link而不是del

if(isset($_POST['del_link'])) {

    $Link = $_POST['del_link'];
于 2013-10-19T14:53:22.353 回答