0

なぜこれが機能しないのか、私にはまったくわかりません。私がやろうとしているのは、データベース内のすべてのメールを取得してエコーすることですが、何を試しても mysql_fetch_array が機能しません。機能していない場合は終了する if ステートメントを追加したため、機能していないのは SQL クエリではありません。それだけでなく、PHPMyAdmin を使用してまったく同じクエリを実行したところ、機能しました。 .

これは私のコードです

<?php
$dbc = mysql_connect('localhost', 'root', ''); //host, username, pass
$db = mysql_select_db('habbo', $dbc);

if(!$dbc || !$db)
    die("Unknown Error.");

$sql = "SELECT `email` FROM `logininfo` WHERE `id` = '1'";
mysql_query($sql);

if(!$sql)
    die(mysql_error());

while($row = mysql_fetch_array($sql))
    echo $row['email'] . " ";

?>

したがって、何が起こっているのかわかりません。両方のエラー トラップが表示されません。これを言っているページに移動すると、エラーが発生します。

Warning: mysql_fetch_array() expects parameter 1 to be resource, string given on line 14

クエリが壊れていることを意味すると思いますが、クエリはそうではありません。前述のように、エラー トラップを設定し、PHPMyAdmin でクエリを実行したため、XAMPP または何かの問題である可能性があります。Apache と MySQL を再起動しましたが、それでも同じエラーが発生します。

4

4 に答える 4

1

クエリの結果ではなく、SQL テキストから結果を取得しようとしています。

$sql = "SELECT `email` FROM `logininfo` WHERE `id` = '1'";
$res = mysql_query($sql);

if(!$res)
    die(mysql_error());

while($row = mysql_fetch_array($res))
    echo $row['email'] . " ";
于 2013-07-28T18:07:29.057 に答える
0

$sqlである必要がありmysql_query()ます。おそらくMYSQL_ASSOCも追加します

何かのようなもの:

$result = mysql_query("SOME QUERY");
while($row = mysql_fetch_array($result, MYSQL_ASSOC)){
    echo $row['email'] . " ";
}
于 2013-07-28T18:10:35.637 に答える
0

$sql実際には文字列であり、MySQL からの結果にアクセスするために必要なリソースではありません。

の結果を保存し、それmysql_query()が false であるかどうかを確認して を呼び出しmysql_error()、そうでない場合は に渡す必要がありmysql_fetch_array()ます。

于 2013-07-28T18:07:08.583 に答える