[pgsql-jp: 29457] Re: テーブル検索の仕方を教えて下さい(初歩)
Masashi Ohba
ohba @ netforce.ne.jp
2003年 3月 22日 (土) 06:15:11 JST
大場です。
#関数の返り値が何を示すのか
#根本的な所で大きな勘違いをしています。
In message "[pgsql-jp: 29456] テーブル検索の仕方を教えて下さい(初歩)",clam @ infosakyu.ne.jp wrote...
>$sql = "SELECT user_id FROM tmp WHERE use_id = '$id' ;" ;
> $result = pg_query($sql) ;
> if ($result) {
> print ("ただしいIDです。") ;
>
> if (!$result) {
> print ("IDが違います。) ;
> }
>これだと偽で「IDが違います。」を期待しているのですが、期待に反して
>「ただしい です。」が表示されてしまいます、
>宜しくお願いします。
$result=pg_query($sql);
で$resultには「結果ID」が入ります。
「結果ID」はselectした「user_id」が入るわけではありません。
で、「結果ID」を得たら、例えばpg_fetch_array()やpg_fetch_row()に
$resultを突っ込んで、欲しいデータを引っ張り出すわけです。
なので、$resultで「ただしいuser_id」なのか
「user_idが違うか」の判定は
まったく違う物なわけですから「できません」し
$resultには「結果ID」という何かしらの値がすでに
入ってるわけですから
#最初のif文は{}の対応おかしいけど…
if ($result) {
print ("ただしいIDです。") ;
}
が実行されるのは文法的には正しいわけです。
#この段階で欲しい値の「user_id」が取れると
#考えてるのが大きな間違いです
「$result = pg_query($sql);」の$resultってのが
一体何を示しているか良く考えてください。
--------------------------------------------------
Name : 大場正志(Masashi Ohba)
E-mail: ohba @ netforce.ne.jp
url : http://www.netforce.ne.jp/~ohba
コガネメキシコインコ飼ってます
Add : Fukuoka-city, Japan
まもなく仙台に帰る予定(プーかなぁ…)
pgsql-jp メーリングリストの案内