dポイントプレゼントキャンペーン実施中!

fetch_arrayでのエラー

はじめまして。初心者ですが、ご教授頂きたいです。
PHP,mysqlでサイトを作っていますが、

while ($row = mysqli_fetch_array(mysql_query($dbc,"SELECT userid FROM user_a")))
{
$data = $row['userid']."member"; //テーブル名
mysqli_query($dbc,"DELETE FROM $data WHERE USERID = 'xxx'");
}

このように書いたところ、

Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in


とエラーが返ってきてしまいます。
テーブル user_a の中にある "userid" を一つずつ取り出し、
それぞれの userid.member というテーブルに xxx がある行を削除していきたいのが目的です。

ネットで探しても、このエラーに関して解決策が書かれているサイトが見当たらなく
途方に暮れている次第です。

どうかお助けください。宜しくお願い致します。

A 回答 (2件)

運用方法として・・・



メンバー分テーブルがあるということでしょうか?
あまりに冗長な作りにみえますが・・・
memberテーブルを一つだけ用意して、useridフィールドを用意しておけばよいのでは?

この回答への補足

ご回答ありがとうございます。

不特定のユーザー同士で関係を作って...とマトリクスになっているので、テーブルが多少増えてしまっています。

補足日時:2010/09/09 14:18
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

mysqli_fetch_arrayで返ってくる値がなかったのでこのエラーが出てました。
whileが動く前に値の有無で条件を与えてやればよかったみたいです。

ご協力ありがとうございました。

お礼日時:2010/09/09 14:57

マニュアルをきちんと読みましょう。


mysqli_fetch_array()に与えられているパラメータが間違っているからエラーになっているだけです。解決策も何もありません。

ま、中の関数がmysql_query()じゃなくてmysqli_query()の間違いなんでしょうけど。

mysql_query()とmysqli_query()はパラメータも返す値の型も違うので混用してはいけません。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

申し訳ありません、このサイトに写すときに mysqli_query() を mysql_query()と書いていました。
実際はすべて mysqli_query()となっていますが、このようなエラーが出ます。
それでも与えてるパラメーターがどのように違うのかですね。
マニュアルをまたしっかり当たります

お礼日時:2010/09/09 14:12

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!