PHP 関数の while ループは無効です
$conn = mysql_connect("localhost","root","root");//データベースに接続するには、独自の値を入力してくださいユーザー名とパスワード
mysql_select_db("hxxx");//MYSQL データベースを選択
mysql_query("set names utf-8");//gb2312 エンコーディングに設定
function Cliebiao($mingcheng1, $mingcheng2){
$liebiao="";
$rows="";
$result = mysql_query("select mingcheng,daima from mingcheng where leixing='".$mingcheng1."'") ;
echo " $mingcheng1: ";
return $liebiao;
}
$mingchenga="型名";
$mingchengb="mingcheng";
Cliebiao($mingchenga,$mingchengb);
?>
条件を満たすデータが存在し、プログラムが実行された後、データは表示されず、「」タイプ名のみが表示されます: ""
問題に関するヒントをいくつか教えてください
------ソリューションのアイデア----------------------
while($ rows = mysql_fetch_row($result)){
echo "";
}
mysql_fetch_行を内に置くと、mysql_fetch_配列
になります------ソリューションのアイデア--------------- ---------
Ao Cai さんは、Cliebiao 機能もあることを知りました。
------解決策のアイデア----------------------
<br /><br />global $conn;<br />$result = mysql_query("select mingcheng,daima from mingcheng where leixing='".$mingcheng1."'",$conn);<br /><br />
ログイン後にコピー
------解決策のアイデア----------- 関数のカプセル化はこのようにエコーされませんね。 ?
------解決策のアイデア----------------------<br /><?php<br />$conn = mysql_connect("localhost","root","root");//连接数据库,请填写你自己的用户名密码<br />mysql_select_db("hxxx");//选择MYSQL数据库 <br />mysql_query("set names utf-8");//设置为utf-8编码<br /><br />function Cliebiao($mingcheng1, $mingcheng2, $conn){<br /> $liebiao = "";<br /> $rows = "";<br /> $result = mysql_query("select mingcheng,daima from mingcheng where leixing='".$mingcheng1."'", $conn); <br /> $liebiao .= "$mingcheng1: <select name=$mingcheng2>";<br /> while($rows = mysql_fetch_array($result)){<br /> $liebiao .= "<option value=".$rows[1].">".$rows[0]."</option>";<br /> }<br /> $liebao .= "</select>";<br /> return $liebiao;<br />}<br />$mingchenga="类型名称";<br />$mingchengb="mingcheng";<br />echo Cliebiao($mingchenga, $mingchengb, $conn);<br />?><br />
ログイン後にコピー
1.関数内で echo などの出力関数を使用しないようにしてください。これにより、関数の内容を返して結果を出力することができます。
2. 6 階が正しいです。ハンドルは外部で生成されており、mysql_query 関数を使用する前にハンドルを明確に指定してください。
------ソリューションのアイデア----------------------