本帖最后由 hakji 于 2009-06-26 14:59:08 编辑

解决方案 »

  1.   

    原因很大一部分是因为sql语句写得不对,不能得到正确的结果集.
    建议echo "SELECT * FROM `".$adb."area` ORDER BY `sort` DESC"; 拿到命令行或者工具去执行.
      

  2.   

    sql執行出錯了
    建議
    $sql="SELECT * FROM `".$adb."area` ORDER BY `sort` DESC"
    $rs=mysql_query($sql) or die(mysql_error().$sql); 查看下哪裏出錯了
      

  3.   

    靠,输出 sql,自己去环境中执行不就行了,连这个都不会的话别混了!
      

  4.   

    我试过了,把sql语句输出以后直接在pma里面运行时是可以的,没有错!所以我就觉得纳闷了!才来这里问问大家的!
      

  5.   

    这个4楼jeff 激动了 激动了 冲动是魔鬼~~~~~ -_-|||
      

  6.   

    那你把能执行的SQL重新放字符串里面再用mysql函数执行试一下
      

  7.   

    把SQl语句中的变量直接换成结果试一试
      

  8.   

    估计是这段代码的问题,你好好看看吧,就是2L说的mysql_select_db("".$adb."area",$conn); 
      

  9.   

    我用了3楼的方法试了,出现了No database selected的提示哦!怎么回事呢?
      

  10.   

    还有你刚才用3楼的,这句还是要的,
    mysql_select_db("".$adb."area",$conn); 
      

  11.   

    mysql_fetch_assoc这种不是很好吧我一直用的array这种……
      

  12.   

    $rs=mysql_query("SELECT * FROM `".$adb."area` ORDER BY `sort` DESC"); 
    靠,我一眼就看出来是你SQL写错了啊!!!!
      

  13.   

    <? 
          mysql_select_db("".$adb."area",$conn); //选择数据库
          $rs=mysql_query("SELECT * FROM `".$adb."area` ORDER BY `sort` DESC"); //SELECT * FROM `".$adb."area` ORDER BY `sort` DESC这个SQL语句的意思是从数据库中读取数据,我可以这么理解么?貌似这个`".$adb."area`是数据库名称,不是数据表名称啊。这里应该是数据表名称才对。而且楼主的写法也忒麻烦了点。
          while ($rw=mysql_fetch_assoc($rs))//后面么问题
          echo " {$rw['areaname']}";?>
      

  14.   

    mysql_fetch_assoc换个试试=>
    mysql_fetch_array
      

  15.   

    19楼正解
    而且要对查询的结果集进行操作时最好先进行判断,因为你不可能保证你每次的查询结果都是正确的。
    if($rs)
    {
    while($rw=mysql_fetch_assoc($rs))
    {
    ...操作
    }
    }
      

  16.   

    SELECT * FROM `".$adb."area` ORDER BY `sort` DESC"); //SELECT * FROM `".$adb."area` ORDER BY `sort` DESC 
    $adb 数据库名的话
    ".$adb."area
    改成
    ".$adb.".area
      

  17.   

    19楼正解 
    而且要对查询的结果集进行操作时最好先进行判断,因为你不可能保证你每次的查询结果都是正确的。 
    if($rs) 

    while($rw=mysql_fetch_assoc($rs)) 

    ...操作 

      

  18.   

    可以用MYSQL_ERROR调试使得错误更清晰
      

  19.   

    mysqli_query 得这么写吧 还有php-apache2handler.ini里的676行把前面的符号去掉
      

  20.   

    先echo Sql 语句,看看,习惯来的
      

  21.   

      mysql_select_db("".$adb."area",$conn); 应该没连到数据库
      

  22.   

    $rs=mysql_query("SELECT * FROM `".$adb."area` ORDER BY `sort` DESC");  
    改为$rs=mysql_query("select * from $adb."area order by sort desc"); 
    试试!