重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

http://www.sapphirus.biz/php/sformmail2/
上記のフリーPHPのカスタマイズで困っております。

「はい」・「いいえ」の必須項目のselectタグで
「いいえ」を選択した場合に「いいえの方は受付できません」

// エラー表示設定
$temp_err = array(
'__Error_Input_Data__'=> '必須項目です'
,'__Error_Input_Data__'=> 'いいえの方は受付できません'
,'__Error_Marge_Data__'=> '入力された内容に不足があります'
,'__Error_Mail_Address__'=> 'メールアドレスが正しくありません'
,'__Error_Mail_Check__'=> 'メールアドレスが一致しません'
,'__Error_Text_Max__'=> '文字数が多すぎます(__Text_Max__字まで)'
);

として、肝心のif文をどう書き直してどの部分に入れればいいのか
勉強不足の私にはわかりません。

配布元にも問い合せてみたのですが
カスタマイズに関しては現在受け付けていないそうで…。

どなたか教えて頂けませんでしょうか?

A 回答 (2件)

>「必須項目です」というエラーメッセージになってしまいました。



投稿した後に気づいていたんですが、
まあ、わかるかな。と思い、書き足しませんでした。

>254行目付近
>(省略)
>} elseif ($name == "yesno" && $value == "いいえ") {
>$_SESSION['SFM'][$name] = '__Error_Input_Data__';
>$error = 1;
>} else {
>(省略)
>に変更します。

の後に、

>elseif ($name == "yesno" && $value == "いいえ") {
>$_SESSION['SFM'][$name] = '__Error_SelectNo_Data__';
>$error = 1;
>}

と少し違っています。
これは回答を書いている時に、__Error_Input_Data__が2重で指定されていたことに気づいた為、下部は直したんですが、上部を手直しするのを忘れていました。
まあ、内容が理解していればわかるかな。と思ったんですが^^;

ということで、

}elseif ($name == "yesno" && $value == "いいえ") {
$_SESSION['SFM'][$name] = '__Error_SelectNo_Data__';
$error = 1;
}

として下さい。

__Error_Input_Data__
ではなく、
__Error_SelectNo_Data__
です。
    • good
    • 0
この回答へのお礼

できました!!!!!

本当にありがとうございました!

お礼日時:2011/06/02 12:25

選択肢にはあるのに、選択したら怒られる。

これいかに?
まあ、以下の訂正でお試し下さい。

>'__Error_Input_Data__'=> '必須項目です'
>,'__Error_Input_Data__'=> 'いいえの方は受付できません'
同じキーが2つ合ったらうまく動作しないのでは?
,'__Error_Input_Data__'=> 'いいえの方は受付できません'

,'__Error_SelectNo_Data__'=> 'いいえの方は受付できません'
に変更

254行目付近
} else {
$_SESSION['SFM'][$name] = $value;
}

} elseif ($name == "yesno" && $value == "いいえ") {
$_SESSION['SFM'][$name] = '__Error_Input_Data__';
$error = 1;
} else {
$_SESSION['SFM'][$name] = $value;
}
に変更します。

elseif ($name == "yesno" && $value == "いいえ") {
$_SESSION['SFM'][$name] = '__Error_SelectNo_Data__';
$error = 1;
}
を入れただけです。
yesnoの部分にselectで指定したname値を入れます。

この回答への補足

せっかく教えて頂きましたが、

「いいえ」を選択しても

「必須項目です」というエラーメッセージになってしまいました。

補足日時:2011/06/02 11:20
    • good
    • 0
この回答へのお礼

ありがとうございます!!!!

早速試してみます!

もっと勉強しなくちゃダメですね。

お礼日時:2011/06/01 19:13

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