- ベストアンサー
チェックボックスがチェックされていない場合エラー
そこで チェックボックス側でチェックされてない場合、全てのvalueを送るみたいな処理は出来ないでしょうか? 受け取り側のphpで何らかの処理をするしかないですか?
- みんなの回答 (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>
その他の回答 (2)
- pQ2MZc53
- ベストアンサー率12% (1/8)
第一、エラーってたとえば、Warning・・・ とか出ているじゃないですか? エラーメッセージってそもそも「ここがおかしいですよ!」ってわざわざ書いてくれているものですよ。 エラーメッセージが出ているんなら、せめてそれをコピペすると答えやすいんですが。 例文って言われてもね・・・。 なんかせっかくのプログラミングの楽しみをあなたから奪ってしまうようで、なんか気が引けるんですが?
- pQ2MZc53
- ベストアンサー率12% (1/8)
そうですね。 > チェックボックス側でチェックされてない場合、全てのvalueを送るみたいな処理は出来ないでしょうか? はできないです。 > 受け取り側のphpで何らかの処理をするしかないですか? こっちのほうが正解です。変数がセットされていないときの条件分岐が必要になります。
補足
良ければ例文お願い致します。
お礼
ありがとうございます。試してみます。