[PHP-users 25381] Re: フォームにおける入力チェック
ムー
ml_muu @ yahoo.co.jp
2005年 4月 16日 (土) 23:06:00 JST
初心者なもので、茂木さんの仰るところまでも行き着いていま
せんでした。
アンケートフォームなどでよくある「ラジオボタンでその他を
選択したら、テキストスペースで具体的な何かを記入してもら
う」ということをしたかったのです。
結局、以下で逃げました。
ありがとうございました。
if ( $g_FORM[ $key ][ "CHK_SPRIT" ] == true ) {
if ( $g_FORM[ $key ][ "VALUE" ] == "" ) {
$g_FORM[ $key ][ "ERROR" ] = true;
$g_FORM[ $key ][ "MESSAGE" ] = "必須";
}
else if ( $g_FORM[ $key ][ "VALUE" ] == "その他" &&
$_REQUEST[ "
任意のVALUE" ] == "") {
$g_FORM[ $key ][ "ERROR" ] = true;
$g_FORM[ $key ][ "MESSAGE" ] = "必須";
continue;
}
}
--- Katsuo Mogi <mogi-k2 @ msg.biglobe.ne.jp> からのメッセ
ージ:
> こんにちは。茂木です。
>
> In the message [PHP-users 25376]
> フォームにおける入力チェック
>
> <20050415141528.1303.qmail @ web3106.mail.bbt.yahoo.co.jp>
> 村重 良子 <ml_muu @ yahoo.co.jp> wrote:
>
> > 問い合わせフォームなどにおいて、
> > 1. ラジオボタンの必須入力チェックを行う
> >
> 2. 任意のラジオボタンが選択された場合、任意のテキスト
ス
> > ペースへの必須入力チェックを行う
>
> >
> という処理を行いたいのですが、どのように記述すればよろ
し
> > いでしょうか。
>
> ループで回すと、ラジオボタンの要素より
> テキストの要素が先に処理される可能性があるため、
> チェックをすり抜けてしまうのだと思います。
>
> > foreach ( $g_FORM as $key => $setting ) {
>
> の部分を
> $form_keys = array('elem1', 'elem2', 'elem3');
> foreach ( $form_keys as $key ) {
>
> とか明示的に順番を決めて処理してはどうでしょうか。
> 変数を$g_FORMのみで済ませるには少し工夫が必要ですが。
>
> 蛇足ですが、
> $setting変数は、本当は何かにお使いですか?
> 使ってないのであれば
> foreach ( array_keys($g_FORM) as $key) {
>
> とか書くとすっきりするかも。
>
> ご参考になれば幸いです。
> --
> ---------------------------------
> 茂木克夫
> mail: mogi-k2 @ msg.biglobe.ne.jp
> site: http://www.momo.dyndns.org/~katsu/
> ---------------------------------
>
> _______________________________________________
> PHP-users mailing list PHP-users @ php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ -
> 質問する前にはこちらをお読みください
> http://www.php.gr.jp/php/novice.php3
__________________________________
Do You Yahoo!?
Upgrade Your Life
http://bb.yahoo.co.jp/
PHP-users メーリングリストの案内