Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/kxmusic/test.php on line 8
本人使用XAMPP for linux 版
在本地机 WAMP 可以使用
但上次到服务器 就出现这个错误
请指教一下 
<?php  02  include("config.php");  03    04   if($_POST[submit]){  05     $username= str_replace(" ","",$_POST[username]);  06     $_SESSION[login_name]= str_replace(" ","",$_POST[username]);  07     $sql="select * from user_list where `username` = '$username' and user_static != '0'";  08     $query=mysql_query($sql);  09     $us=is_array($row=mysql_fetch_array($query));  10     $ps= $us ? md5($_POST[password].ALL_PS)== $row[password] : FALSE;  11     if($ps){  12         $_SESSION[uid]=$row[uid];  13         $_SESSION[user_shell]=md5($row[username].$row[password].ALL_PS);  14         $_SESSION[times]=mktime();  15         echo "登陆成功";  16         echo "<a href=\"jianli.php\">add list</a><br/>";  17         echo "<a href=\"logout.php\">logout</a>";  18     }else{  19         echo "密码或者用户名错误";  20          session_destroy();  21     }  22    23   }  24    25    26    27 ?>  28 <LINK href="common.css" type=text/css rel=stylesheet>  29    30   <title>::开心肠粉网::开心音乐室</title><form action="" method="post">  31    32   username:<input type="text" name="username" style="height:23px" /><br>  33   password:<input type="password" name="password"  style="height:23px" /><br>  34   code:<input type="code" name="code" size="10" style="height:23px" />  35   <img src="imgcode.php">  36   <br><br>  37   <input type="submit" name="submit" value="登陆"/>  38   </form> 
config.php <?php  02  session_start();  03  //数据库连接  04  $conn=mysql_connect('localhost','root','');  05  mysql_select_db('test',$conn);  06  mysql_query("set names 'gbk'");   07  //定义常量  08  define(ALL_PS,"topbase");  09    10   function user_shell($uid,$shell,$m_id){  11     $sql="select * from user_list where `uid` = '$uid'";  12     $query=mysql_query($sql);  13     $us=is_array($row=mysql_fetch_array($query));  14     $shell=$us ? $shell==md5($row[username].$row[password].ALL_PS):FALSE;  15     if($shell){  16         if($row[m_id]<=$m_id){  17            return $row;  18         }else{  19         echo "你的权限不足";  20         exit();  21         }  22     }else{  23      echo "你无权限访问该页";  24      exit();  25     }  26   }  27    28     function user_mktime($onlinetime){  29     $new_time = mktime();  30     echo $new_time-$onlinetime;  31     if($new_time-$onlinetime > '1000'){  32     echo "登录超时";  33     exit();  34     session_destroy();  35    }else{  36     $_SESSION[times]=mktime();  37    }  38   }  39  ?> 

解决方案 »

  1.   

    mysql_fetch_array()有无效的参数, 在之前加一行print把参数打印出来看看是什么
      

  2.   

    第一段代码是  /home/kxmusic/test.php 这个文件么mysql_fetch_array 参数有问题
      

  3.   

    <?php
     include("config.php");
        
        $sql="select * from user_list where `username` = 'admin' and user_static != '0'";
        $query=mysql_query($sql);
        $row=mysql_fetch_array($query);
        $us=is_array($row);
            print_r($row);
    ?>
    我直接这样写 都出现Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /home/kxmusic/test.php on line 6
      

  4.   

    var_dump($query);  //这里显示什么
    $row=mysql_fetch_array($query);
      

  5.   

    array mysql_fetch_array ( resource result [, int result_type])result_type可以是MYSQL_NUM、MYSQL_ASSOC、MYSQL_BOTHwhile ($row = mysql_fetch_array($result, MYSQL_NUM)) {
            printf ("ID: %s  Name: %s", $row[0], $row[1]);
        }
      

  6.   

    var_dump($query);
    显示:
    bool(false)
      

  7.   

    执行 select * from user_list where `username` = 'admin' and user_static != '0' 看一下什么结果
      

  8.   

    如果数据库连接没问题, 那就证明你的sql写错了。
      

  9.   

    select * from user_list where `username` = 'admin' and user_static != '0' 这个在数据库 SQLyog管理器上面 运行正常啊, 可以有记录返回啊但是,为何
    var_dump($query); 
    返回bool(false)
      

  10.   

    select * from user_list where `username` = 'admin' and user_static != '0'里的username字段不用加反引号,
      

  11.   

    query返回结果不正确。应该是一个对象,
    $query=mysql_query($sql) or die(mysql_error());把错误模式打开,这样就不会有这样的问题了,因为你的错误提示等级太高了!
      

  12.   

    <?php
     include("config.php");    $sql="select * from user_list where username = 'admin' and user_static != '0'";
        $query=mysql_query($sql) or die(mysql_error());
            var_dump($query);
        $row=mysql_fetch_array($query);        print_r($row);
    ?>
    显示:No database selected请问是不是 用户授权数据库问题 kaixincf_f (用户名)  kxmusiclist(数据库)
      

  13.   


    帐号正不正确这个要看你服务器的了, config.php配置正确吗? 
      

  14.   

    不等号是 != 这个啊?不是 <> 吗?
      

  15.   


    连接mysql问题  修改用户名和密码
      

  16.   

    mysql_fetch_array($query)在这句前加@就OK了
      

  17.   

    我的也出现了这个问题 当我看了各种可能的原因 去检查时发现我的sql语句写错了
      

  18.   

    在mysql_fetch_array()前面一个@有用吗?对整体的语句有问题么