プロが教える店舗&オフィスのセキュリティ対策術

SQLの中にif文を使いたいですが、
うまくいきません。
やはりwhereの中で使えないですか?
アドバイスお願いします。

実際のSQL文:
$sql = "select * from room";
    $sql = $sql . " WHERE ((Keisai = 1)";
if(Chinryou1>0){
$sql = $sql . " and (Chinryou1 <= {$rent1})";
    }else if(Chinryou1==0){
$sql = $sql . " and (Chinryou2 <= {$rent1})";
   }
$sql = $sql . ")";
$sql = $sql . " order by Narabijun desc, Name";
$sql = $sql . ";";

$result= mysql_query($sql, $conn);
$num= mysql_num_rows($result);

A 回答 (2件)

SQLをこのようにしてみてはいかがでしょうか。



WHERE
 Keisai = 1
 and
 (
  ( 0 < Chinryou1 and Chinryou1 <= {$rent1} )
  or
  ( 0 == Chinryou1 and Chinryou2 <= {$rent1} )
 )
    • good
    • 0
この回答へのお礼

ありがどうごさいます。

できました!!

お礼日時:2011/09/02 11:51

>やはりwhereの中で使えないですか?



if構文はPHPとしてつかっていますよね?
変数の表記とか変じゃないですか?
    • good
    • 0
この回答へのお礼

ありがとうございます。

そうかもしれない。
if文がうなく行かなく、やめました。

お礼日時:2011/09/02 11:51

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