• 締切済み

カラムにデータが重複しているかどうか調べたい

PHP5+MYSQLなのですが、どつぼにはまって抜け出せません・・・。 $sudeniaru=mysql_query("select userid from userinfo where userid='$userid'"); if($sudeniaru){ echo"エラーです、既にあります"; }else{ echo"無いので通ります"; } $useridには、フォームから111と入れていて userinfoテーブルのuseridカラムに既に111が入っていたら、 エラーと出したいのですが、どうやら走査してもらっていないようです。何を入れてもあります、と出ます。 $sudeniaruの中身がおかしい気もするのですが、 どのように解決すれば良いでしょうか、 select文は間違っていないはずなのです・・・。 分かる方いらっしゃいましたら、どうかご教授お願いします。

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

$sudeniaru=mysql_query("・・・"); で得られるのは結果リソースですよ $row = mysql_fetch_array($sudeniaru,MYSQL_ASSOC); などとして配列に受け直すとか、 mysql_num_rows()で行数をカウントするなどで対応すると よいでしょう。

bhdkgo
質問者

お礼

ありがとうございました出来ました、単純なとこでつまづいていました。

bhdkgo
質問者

補足

お返事ありがとうございます。 while ($row = mysql_fetch_array($sudeniaru, MYSQL_ASSOC)) { if ($row== $userid){ echo"OK"; }else{ } } whileでループして・・・ その後どうすればいいでしょうか、そもそもwhileで回しても 配列で受け取れるのでしょうか。

関連するQ&A