2012-01-17 62 views
0

可能重复:
PHP Error: mysql_fetch_array() expects parameter 1 to be resource, boolean given如何摆脱这一警告的 'mysql_fetch_array()预计参数1是资源'

PHP文件

<?php 
    session_start(); 
    $uniqueid = $_SESSION['unique']; 
    $result = mysql_query("SELECT * FROM users_info WHERE email='$uniqueid'"); 
    $user_mini_info = mysql_fetch_array($result); 
?> 

当我执行我的PHP文件,我得到这个警告

Warning: mysql_fetch_array() expects parameter 1 to be resource, 
boolean given in .\profile.php on line 5 

我不知道这是什么意思?为什么我得到这个警告?任何人都可以向我解释这个警告的真正含义,我如何摆脱它?由于此警告,我相信我无法更新从数据库中取回的我的页面内容。任何帮助极大赞赏。谢谢

+1

变化的代码'$结果= mysql_query(...)或死亡(mysql_error());'看出为什么查询失败。 – 2012-01-17 20:39:17

+0

您的代码遭受SQL注入。放下一切,并在这里阅读 - http://en.wikipedia.org/wiki/SQL_injection – Kenaniah 2012-01-17 20:39:23

+0

@Kenaniah:也许吧。会话变量由服务器设置并存储在服务器上,客户端无法修改该变量...只要该变量未设置为客户端直接输入的内容,他就可以。 – animuson 2012-01-17 20:42:17

回答

2

你越来越“错误”,这意味着发生了错误。请在mysql_query上查询documentation

尝试运行echo(mysql_error());以查看错误是什么。

0

一种解决方案是

session_start(); 
$user_mini_info = array(); 
$uniqueid = $_SESSION['unique']; 
$result = mysql_query("SELECT * FROM users_info WHERE email='$uniqueid'"); 
if(!empty($result)) { 
    $user_mini_info = mysql_fetch_array($result); 
} 
相关问题