2013-03-22 77 views
-1

我怎样才能纠正这个错误,我让我的功能,下面是我的错误我怎样才能解决此警告错误即时得到

Warning: mysql_query() expects parameter 2 to be resource, null given in C:\xampp\htdocs\how are things\15_06_widget_corp-final\includes\functions.php on line 40 
Database query failed: 

第40行的代码是这样

$subject_set = mysql_query($query, $connection); 

这是我的功能码

function get_all_subjects($public = true) { 
     global $connection; 
     $query = "SELECT * 
       FROM subjects "; 
     if ($public) { 
      $query .= "WHERE visible = 1 "; 
     } 
     $query .= "ORDER BY position ASC"; 
     $subject_set = mysql_query($query, $connection); 
     confirm_query($subject_set); 
     return $subject_set; 
    } 
+0

您应该使用'mysqli_query()'而不是'mysql_query()'。对于你的问题,mysql_connect肯定失败了,你给mysql_query的var不是一个有效的资源。检查你的全局'$连接' – MatRt 2013-03-22 05:37:29

+0

看看这是否有助于揭示它> http://stackoverflow.com/questions/5039561/php-sql-database-query-error-message – 2013-03-22 05:39:13

+0

什么是comfirm_query函数? – Nikitas 2013-03-22 05:40:17

回答

0

它需要$connection是参考连接到MySQL服务器。
尝试

$connection = mysql_connect('host','user','pass'); 
+1

$连接存在全局变量。在回答花花公子之前阅读 – MatRt 2013-03-22 05:39:25

+1

然后您的$连接无效或关闭 – 2013-03-22 05:40:45

+0

是的,这是问题所在。那个错误清楚地表明它是空的。所以不知怎的,这个变量并没有像预期的那样被结转。但这不是解决方案。解决方法是首先检查变量为什么没有值,而不是在不知道的情况下尝试重新连接到数据库。 – 2013-03-22 05:51:37

0

您必须分配$connection

mysql_connect() 

功能

无论如何,因为他们已被弃用,你应该不再使用MySQL的函数。 您可以改为使用PDO