ホームページ >バックエンド開発 >PHPチュートリアル >この警告を解決する方法がわかりません mysql_fetch_array() はパラメータ 1 がリソースであることを期待しています

この警告を解決する方法がわかりません mysql_fetch_array() はパラメータ 1 がリソースであることを期待しています

WBOY
WBOYオリジナル
2016-06-23 14:22:411824ブラウズ

警告: mysql_fetch_array() はパラメーター 1 がリソースであることを期待しており、/data/multiserv/users/983917/projects/2245004/www/view.php の 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= がオンになっています この警告は表示されませんでした

42 行目はどの行ですか?通常の状況では、ordsu を追加すると、
mysql_query($comment,$mylink) または die(mysql_error());

$result4=mysql_fetch_array( $commentquery,$mylink) が表示されます。 );

$result3=mysql_fetch_array($result2);

mysql_fetch_array を使用している人がエラーを報告しました

42 行目はどれですか?通常の状況では、ordsus を追加するとプロンプトが表示されます
mysql_query($comment,$mylink) または die(mysql_error());

#2 に変更してからエラー メッセージを投稿します

include("conn.php") ;//この行の下に

echo $mylink を追加します


データベース接続が成功していないのではないかと思われます


出てくるのは、リソース ID #1 が何を表しているのかわかりません。 "conn.php");//

echo $mylink; を追加します。 // この行の下に結果を投稿します

データベース接続が成功していないのではないかと思われます

#2 は元のコードから作成されています。 。 #2に変更してからエラーメッセージを投稿した意味がよくわかりません

つい投稿してしまいました… 油断していたみたいです… データベースの同期を忘れていました… 何が来ましたか出力はリソース ID #1 でした。5 階からの返信を引用する意味がわかりません:

include("conn.php");//

echo $mylink; // この行の下に結果
を投稿します。データベース接続が成功していない可能性があります

これはまだ古いものです いいえ

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。