首页 >后端开发 >php教程 >这个警告不知道怎么解决mysql_fetch_array() expects parameter 1 to be resource

这个警告不知道怎么解决mysql_fetch_array() expects parameter 1 to be resource

WBOY
WBOY原创
2016-06-23 14:22:411835浏览

Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in /data/multiserv/users/983917/projects/2245004/www/view.php on line 42

本地服务器调试没有出现这个警告,上传到远程服务器就出现了...而且我没有权限修改远程服务器的配置..只能从代码这里来解决

view.php

 PHP<?phpinclude("conn.php");$ID=$_GET['id'];$ID=ceil($ID);$sql="select * from dianpu where id_dian='$ID' and access='1'";$query=mysql_query($sql,$mylink);$result=mysql_fetch_array($query);?><title></title><table width="891" height="387" border="1" align="center">  <tr>    <th scope="col">店铺名字</th>    <th width="787" scope="col"><?php echo $result['dian_name'];?></th>  </tr>  <tr>    <td width="88"><div align="center">电话</div></td>    <td>      <div align="center">        <?phpecho $result['dian_phone'];?>    </div></td>  </tr>  <tr>    <td><div align="center">      <p>食客评分(0~10)    </p>    </div></td>    <td><div align="center"><?php 	$levelsql="select * from comment where id_dian='$ID'";	$query2=mysql_query($levelsql,$mylink);		//取出总分	$levelcount="select count(*) as count from comment where id_dian='$ID'";	$levelquery=mysql_query($levelcount,$mylink);	$result5=mysql_fetch_array($levelquery);	//取出评分人数	$i=0;	$zongfen=0;	$row=mysql_fetch_array($query2);	do	{	$zongfen=$zongfen+$row['level'];		}	while($row=mysql_fetch_array($query2));	$level=$zongfen/$result5['count'];	echo "平均分:  ".$level;	echo "</br>";	echo "评分个数:".$result5['count'];	?></div></td>  </tr>  <tr>    <td><div align="center">菜单</div></td>    <td><p align="center">      <?php	$sql2="select * from menu where id_dian='$ID' and access='1'";	$result2=mysql_query($sql2,$mylink);	$result3=mysql_fetch_array($result2);	$i=1;	if(!$result3){echo "暂无菜单";}else{	do	{	echo $result3['menuname']."  ¥".$result3['price'];	echo "</br>";	$i++;	}	while($result3=mysql_fetch_array($result2))	;}?>      </p>    <p> </p></td>  </tr>  <tr>    <td><div align="center">备注</div></td>    <td><div align="center"><?php echo $result['beizhu'];?></div></td>  </tr>  <tr>    <td><div align="center">食客评价</div></td>    <td><div align="left">      <?php 	  $comment="select * from comment where id_dian='$ID'";	$commentquery=mysql_query($comment,$mylink);	  $result4=mysql_fetch_array($commentquery,$mylink);	  if($result4)	  {	$i=1;	do{	echo $i."楼--".$result4['username'].": ".$result4['comment']."</br>";	$i++;	}	while($result4=mysql_fetch_array($commentquery,$mylink));	  }	  else	  {		  echo "暂无评论,我们期待你的参与";		  		  }	?>    </div></td>  </tr>  <tr>    <td><div align="center">      <p>给店家</p>      <p>评分评价</p>    </div></td>    <td><form name="form1" method="post" action="comment.php">      <label for="textfield"></label>      <div align="center">        <p>          <label for="name"></label>          昵称          <input type="text" name="name" id="name" />        </p>        <p>评论          <textarea name="pinglun" rows="5" id="pinglun"></textarea>        </p>        <p>          <label for="level"></label>          <label for="level">分数</label>          <select name="level" id="level">            <option value="1">1</option>            <option value="2">2</option>            <option value="3">3</option>            <option value="4">4</option>            <option value="5">5</option>            <option value="6">6</option>            <option value="7">7</option>            <option value="8">8</option>            <option value="9">9</option>            <option value="10">10</option>          </select>           分          <input type="hidden" name="gengxin" value="<?php echo $ID;?>" id="pinglun">          <input type="submit" name="button" id="button" value="提交">        </p>      </div>    </form></td>  </tr></table><p align="center"><a href="view.php?id=<?php echo $ID-1;?>">上一间</a> ///  <a href="view.php?id=<?php echo $ID+1;?>">下一间</a></p>


回复讨论(解决方案)

本地调试的apache已经display_error=on  没有出现这个警告

42行是哪行?一般情况下加个or die 会有提示.
mysql_query($comment,$mylink)  or die(mysql_error());

 $result5=mysql_fetch_array($levelquery);
 $result4=mysql_fetch_array($commentquery,$mylink);
 $result3=mysql_fetch_array($result2);

有mysql_fetch_array的都报错了

42行是哪行?一般情况下加个or die 会有提示.
mysql_query($comment,$mylink) or die(mysql_error());

贴出改成 #2 后的错误信息 

include("conn.php");//这行下边加入
echo $mylink; //贴出结果

我怀疑数据库没有连接成功

出来的是resource id #1不知道代表什么 include("conn.php");//这行下边加入
echo $mylink; //贴出结果
我怀疑数据库没有连接成功

#2就是从原码里弄出来的。。不太明白你意思 贴出改成 #2 后的错误信息

结贴了..看来粗心大意要不得啊..我忘记把数据库给同步过去了.... 出来的是resource id #1不知道代表什么引用 5 楼  的回复:
include("conn.php");//这行下边加入
echo $mylink; //贴出结果
我怀疑数据库没有连接成功

这个东i还是姐ue不了

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn