2011-08-15 67 views
0

由于某种原因,我的sql查询没有执行,并且错误消息不是用php打印的。下面是代码:mysql命令不执行使用php

mysql_connect("$host", "$username", "$password")or die("cannot connect"); 
    mysql_select_db("$db_name")or die("cannot select DB"); 

    $sql = "DELETE FROM data WHERE id='".$_GET['id']."'"; 
    echo $sql; 
    $result=mysql_db_query($sql); 
    if(!$result) { 
     $msg = "ERROR: ". mysql_error(); 
     echo $msg; 
    } 

我现在知道它的SQL注入脆弱的,但我要去解决这个问题后,我得到它的工作。另外,如果我复制$ sql打印并将其粘贴到phpmyadmin中,它会起作用,并且它会进入if语句。

+0

您是否启用PHP错误报告? –

+1

mysql_db_query()是一个折旧函数。 – dqhendricks

+0

您是否激活了display_errors并调整了您的error_reporting级别? – scube

回答

1

使用mysql_query()而不是mysql_db_query()已弃用。

+0

我正在使用mysql_query(),它不工作,所以我尝试了mysql_db_query()出于绝望,只是忘了在发布之前将它切回。 – user776530

2

你想使用mysql_query(),而不是mysql_db_query()。

为什么你把所有的变量放在引号中?