$value) { $_REQUEST[$key] = stripslashes($_REQUEST[$key]); $_REQUEST[$key] = mb_convert_encoding($_REQUEST[$key],"SJIS","EUC-JP"); } } //---------------- // デフォルト設定 //---------------- $param = array("naiyo1","naiyo2","pack1","pack2","comment","uname","kana","email","emailk","tel","zip","pref","address","soon"); for ($i=0;$i $value) { $key = stripslashes($key); if (false !== strpos($key,"NM_")) { $keyname = str_replace("NM_","",$key); $value = $_REQUEST[$keyname]; //半角カナを全角、全角英数を半角に変換 $value = mb_convert_kana ($value, "KVa", "SJIS"); $chk = 0; if (false === strpos($keyname,"NUMBER_")) { $chk = 1; } if (false === strpos($keyname,"MAX_")) { $chk = 1; } if (false === strpos($keyname,"HS_")) { $chk = 1; } if (false === strpos($keyname,"HSDUP_")) { $chk = 1; } if (false === strpos($keyname,"MAIL_")) { $chk = 1; } if (false === strpos($keyname,"ZEN_")) { $chk = 1; } if (false === strpos($keyname,"HAN_")) { $chk = 1; } if (false === strpos($keyname,"HR_")) { $chk = 1; } if (false === strpos($keyname,"KT_")) { $chk = 1; } if (false === strpos($keyname,"SAME_")) { $chk = 1; } if (false === strpos($keyname,"ZASCII_")) { $chk = 1; } if (false === strpos($keyname,"RETURN_")) { $chk = 1; } if (false === strpos($keyname,"TO_HIRA_")) { $chk = 1; } if ($chk) { //数値チェック if (GetParam('NUMBER_'.$keyname)) { if ($value && !preg_match("/^[0-9\-]+$/",str_replace(" ","",$value))) { $err .= GetParam('NM_'.$keyname)."には半角数値を入力してください。
"; $errctl .= ",".$keyname.","; } } //文字数チェック if (GetParam('MAX_'.$keyname)) { if ($value && GetParam('MAX_'.$keyname) < mb_strlen($value,"SJIS")) { $err .= GetParam('NM_'.$keyname)."は".GetParam('MAX_'.$keyname)."文字以内で入力してください。(".mb_strlen($value,"SJIS")."文字入力されています)
"; $errctl .= ",".$keyname.","; } } //必須チェック if (GetParam('HS_'.$keyname)) { if (!trim($value)) { $err .= GetParam('NM_'.$keyname)."を入力してください。
"; $errctl .= ",".$keyname.","; } } //必須チェック(複数いずれかチェック) if (GetParam('HSDUP_'.$keyname)) { if (!trim($value)) { $chkon = 0; for ($hsd=1;$hsd<=GetParam('HSDUP_'.$keyname);$hsd++) { if (GetParam($keyname.$hsd)) { $chkon = 1; } } if (!$chkon) { $err .= GetParam('NM_'.$keyname)."のいずれかを選択してください。
"; $errctl .= ",".$keyname.","; } } } //メールアドレスチェック if (GetParam('MAIL_'.$keyname)) { if ($value && (!preg_match("/^[^@]+@[^.]+\..+/",$value) || (false !== strpos($value,",")) || strlen($value)!=mb_strlen($value,"SJIS"))) { $err .= $_REQUEST['NM_'.$keyname]."は、メールアドレスの形式で入力してください。
"; $errctl .= ",".$keyname.","; } } //全角チェック if (GetParam('ZEN_'.$keyname)) { if ($value && strlen($value) == mb_strlen($value,"SJIS")) { $err .= GetParam('NM_'.$keyname)."は全角で入力してください。
"; $errctl .= ",".$keyname.","; } } //半角チェック if (GetParam('HAN_'.$keyname)) { if ($value && strlen($value) != mb_strlen($value,"SJIS")) { $err .= GetParam('NM_'.$keyname)."は半角で入力してください。
"; $errctl .= ",".$keyname.","; } } //ひらがなチェック if (GetParam('HR_'.$keyname)) { if ($value && !preg_match("/^(\x82[\x9f-\xf1]|\x81[\x4a\x54\x55]|\xa4[\xa1-\xf3]|\xa1[\xb5\xb6\xab]|\xe3\x81[\x81-\xbf]|\xe3\x82[\x80-\x9e])+$/",str_replace(" ","",$value))){ $err .= $_REQUEST['NM_'.$keyname]."は、ひらがなで入力してください。
"; $errctl .= ",".$keyname.","; } } //カタカナチェック if (GetParam('KT_'.$keyname)) { if ($value && !preg_match("/^(\xe3\x82[\xa1-\xbf]|\xe3\x83[\x80-\xbe]|\xa5[\xa1-\xf6]|\xa1[\xb3\xb4\xbc]|\x83[\x40-\x96]|\x81[\x52\x53\x5b])+$/",str_replace(" ","",$value))) { $err .= $_REQUEST['NM_'.$keyname]."は、カタカナで入力してください。
"; $errctl .= ",".$keyname.","; } } //同値チェック if (GetParam('SAME_'.$keyname)) { if ($value != GetParam(GetParam('SAME_'.$keyname))) { $err .= GetParam('NM_'.GetParam('SAME_'.$keyname))."と".GetParam('NM_'.$keyname)."の入力が違います。
"; $errctl .= ",".$keyname.","; } } //全角ASCIIチェック if (GetParam('ZASCII_'.$keyname)) { if (preg_match("/^(?:\xEF\xBC[\x81-\xBF]|\xEF\xBD[\x80-\xA0])+$/", mb_convert_encoding($value,"UTF-8", "SJIS"))) { $err .= $_REQUEST['NM_'.$keyname]."は日本語で入力してください。
"; $errctl .= ",".$keyname.","; } } //強制改行 if (GetParam('RETURN_'.$keyname)) { $value = GetCommentReturn($value,GetParam('RETURN_'.$keyname)); } //半角カナ⇒全角ひらがな if (GetParam('TO_HIRA_'.$keyname)) { $value = mb_convert_kana ($_REQUEST[$keyname], "HVa", "SJIS"); } //不要文字置換 $value = str_replace("<","<",$value); $value = str_replace(">",">",$value); $value = str_replace("'","’",$value); //島区が汲ニして変換されてしまうため、そのままにする // $value = str_replace ("","(株)",$value); // $value = str_replace ("","(有)",$value); $value = str_replace ("\r\n","
",$value); $value = str_replace ("\n","
",$value); $value = str_replace ("\r","
",$value); } //request変数に戻す $_REQUEST[$keyname] = $value; } } if ($err) { //テンプレートにエラーメッセージ $err = "".$err."
\n"; //再度入力テンプレートファイル取得 $template = $GLOBALS['gFORM_HTML']; $_REQUEST['chk'] = ""; $_REQUEST['send'] = ""; } else { //確認テンプレートファイル取得 $template = $GLOBALS['gCHECK_HTML']; } } if (!$err && GetParam('send')) { //---------------- // 送信 //---------------- //内容、資料と箇所をまとめる $_REQUEST['naiyos'] = $_REQUEST['packs'] = $_REQUEST['kashos'] = ""; for ($i=1;$i<=2;$i++) { if ($_REQUEST['naiyo'.$i]) { if ($_REQUEST['naiyos']) { $_REQUEST['naiyos'] .= ","; } $_REQUEST['naiyos'] .= $_REQUEST['naiyo'.$i]; } } for ($i=1;$i<=2;$i++) { if ($_REQUEST['pack'.$i]) { if ($_REQUEST['packs']) { $_REQUEST['packs'] .= ","; } $_REQUEST['packs'] .= $_REQUEST['pack'.$i]; } } //メールボディ置換 foreach( $_REQUEST as $key => $value) { $keyname = stripslashes($key); $value = str_replace("
","\n ",$value); if (""==$value) { $value = "−"; } $GLOBALS['gMAN_BODY'] = str_replace("::".$keyname."::",$value,$GLOBALS['gMAN_BODY']); $GLOBALS['gAUTO_BODY'] = str_replace("::".$keyname."::",$value,$GLOBALS['gAUTO_BODY']); } //対象店舗すべてにメール ⇒ 店舗宛てはなし // $shopmail = ""; // for ($i=0;$ilocation.href='#contact_form';"; } ?>