• ベストアンサー

チェックボックスがチェックされていない場合エラー

そこで チェックボックス側でチェックされてない場合、全てのvalueを送るみたいな処理は出来ないでしょうか? 受け取り側のphpで何らかの処理をするしかないですか?

質問者が選んだベストアンサー

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

きちんとロジックを理解していればチェックしていなければ すべてが選ばれているのと同等になります。 <?PHP $sql="select * from test where 1"; if(isset($_REQUEST["hoge"])) $hoge=$_REQUEST["hoge"]; if(isset($hoge) and is_array($hoge)){ foreach($hoge as $key=>$val){ $sql.=($key==0)?" AND hoge IN (":","; $sql.="'".mysql_real_escape_string($val)."'"; if($key==count($hoge)-1) $sql.=")"; } } print $sql; ?> <form> <input type="checkbox" name="hoge[]" value="1">1 <input type="checkbox" name="hoge[]" value="2">2 <input type="checkbox" name="hoge[]" value="3">3 <input type="submit" value="go"> </form>

noname#142312
質問者

お礼

ありがとうございます。試してみます。

その他の回答 (2)

  • pQ2MZc53
  • ベストアンサー率12% (1/8)
回答No.2

第一、エラーってたとえば、Warning・・・ とか出ているじゃないですか? エラーメッセージってそもそも「ここがおかしいですよ!」ってわざわざ書いてくれているものですよ。 エラーメッセージが出ているんなら、せめてそれをコピペすると答えやすいんですが。 例文って言われてもね・・・。 なんかせっかくのプログラミングの楽しみをあなたから奪ってしまうようで、なんか気が引けるんですが?

  • pQ2MZc53
  • ベストアンサー率12% (1/8)
回答No.1

そうですね。 > チェックボックス側でチェックされてない場合、全てのvalueを送るみたいな処理は出来ないでしょうか? はできないです。 > 受け取り側のphpで何らかの処理をするしかないですか? こっちのほうが正解です。変数がセットされていないときの条件分岐が必要になります。

noname#142312
質問者

補足

良ければ例文お願い致します。

関連するQ&A