-1
 $query = "SELECT * FROM table WHERE data = '$userinput'";
 $row = mysql_query($query);

   while ($row = mysql_fetch_array($row))
    {
         echo $row['data'];
    }

わかりましたので、私の質問は次のとおりです。

  1. mysql_fetch_array は正確に何を返しますか?
  2. また、WHERE 句で複数の一致が見つかった場合、ループを何度も実行するべきではありませんか?

プログラムを実行していますが、印刷する最初の結果しか取得できません

4

3 に答える 3

3

上書きしています$row。代わりに、クエリ結果に別の変数を使用してください。

$query = "SELECT * FROM table WHERE data = '$userinput'";
$result = mysql_query($query);

while ($row = mysql_fetch_array($result))
{
    echo $row['data'];
}
于 2013-02-03T04:36:53.220 に答える
0

使ってみてmysql_fetch_assoc($row)

于 2013-02-03T04:36:08.753 に答える
0

インデックスおよびループ変数と同じ変数を使用しないでください。

$row = mysql_query

while( $row = ...

最初のもの$row$result

于 2013-02-03T04:38:13.197 に答える