ホームページ >バックエンド開発 >PHPチュートリアル >mysqli_fetch_assoc()の戻り値判定問題について

mysqli_fetch_assoc()の戻り値判定問題について

WBOY
WBOYオリジナル
2016-06-23 13:21:512104ブラウズ

結果セットが空かどうかを判断するために empty を使用します。
データテーブルに対応する値がある場合、結果セット内のデータは正常に出力できますが、テーブルにデータがない場合、「データはまだ追加されていません」というメッセージが表示されます。表示されましたか?

<div id="list2">    <?php         if (isset($_GET['userid'])) {            $row1id=$_GET['userid'];            // echo "$row1id";            $query2="SELECT * FROM user WHERE u_id=$row1id";            $result2=mysqli_query($conn,$query2);            // echo "我取得ID了";            while ($row2=mysqli_fetch_assoc($result2)) {                if (!empty($row2)) {                    echo $row2['username']."--".$row2['tphone'];                }else{                    echo "还没有添加数据";                }                            }        }else{            echo "我没有取得ID";        }    ?></div>


次の方法は問題なく、記録されていないプロンプト情報を正常に表示できます。なぜ上記の方法が機能しないのか知りたいのですが。


ディスカッション(解決策)に返信

while ($row2=mysqli_fetch_assoc($result2)) {
when $row2 空の場合、ループに入りません
当然データは出力されません。

while ($row2=mysqli_fetch_assoc($result2)) {
$row2 が空の場合、当然、データは入力されません。出力はまだ追加されていません。


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