$value){ if(!is_array($value)){ ${$key} = htmlspecialchars($value, ENT_QUOTES, "UTF-8"); //hidden生成 if($key != "mode")$hiddens .= ''."\n"; }else{ //クラス選択配列データ処理 ${$key} = $value; //hidden生成 foreach($value as $val){ $hiddens .= ''."\n"; } } } //保存 ////////////////////////////////// if($mode == "w"){ if(isset($_SESSION['ticket'], $_POST['tct']) && $_SESSION['ticket'] === $_POST['tct']){ unset($_SESSION['ticket']); //配信セット require_once("../../form/phpmailer/class.phpmailer.php"); require_once("../../form/phpmailer/jphpmailer.php"); //管理者へ $mailTmp = file_get_contents('../../form/mail.txt'); $subject = mb_substr($mailTmp, 0, mb_strpos($mailTmp, "\n")); $mailBody = mb_substr($mailTmp, mb_strpos($mailTmp, "\n")); $zip = $zip1."-".$zip2; $tel = $tel1."-".$tel2."-".$tel3; $info = ($info)?'受け取る':'受け取らない'; $mailBody = str_replace("%name%",$name1." ".$name2,$mailBody); $mailBody = str_replace("%kana%",$kana1." ".$kana2,$mailBody); $mailBody = str_replace("%zip%",$zip,$mailBody); $mailBody = str_replace("%age%",$age,$mailBody); $mailBody = str_replace("%mail%",$mail,$mailBody); $mailBody = str_replace("%pref%",$pref,$mailBody); $mailBody = str_replace("%add1%",$add1,$mailBody); $mailBody = str_replace("%add2%",$add2,$mailBody); $mailBody = str_replace("%tel%",$tel,$mailBody); $mailBody = str_replace("%num%",1,$mailBody); $mailBody = str_replace("%info%",$info,$mailBody); $agent = $_SERVER['HTTP_USER_AGENT']."\n"; $agent .= $_SERVER['REMOTE_ADDR']; $mailBody = str_replace("%agent%",$agent,$mailBody); $pmail = new JPHPMailer(); $pmail->addTo($mailTo); //$pmail->addCC($mailTo2); $pmail->setFrom($mail, $name1); $pmail->setSubject($subject); $pmail->setBody($mailBody); if (!$pmail->send()){ $messagev = 'メール送信時にエラーが発生しました。:MAIN ERROR A001'; }else{ //控えメール $mailTmp = file_get_contents('../../form/hikae.txt'); $subject = mb_substr($mailTmp, 0, mb_strpos($mailTmp, "\n")); $mailBody = mb_substr($mailTmp, mb_strpos($mailTmp, "\n")); $mailBody = str_replace("%name%",$name1." ".$name2,$mailBody); $mailBody = str_replace("%kana%",$kana1." ".$kana2,$mailBody); $mailBody = str_replace("%zip%",$zip,$mailBody); $mailBody = str_replace("%age%",$age,$mailBody); $mailBody = str_replace("%mail%",$mail,$mailBody); $mailBody = str_replace("%pref%",$pref,$mailBody); $mailBody = str_replace("%add1%",$add1,$mailBody); $mailBody = str_replace("%add2%",$add2,$mailBody); $mailBody = str_replace("%tel%",$tel,$mailBody); $mailBody = str_replace("%num%",1,$mailBody); $mailBody = str_replace("%info%",$info,$mailBody); $pmail = new JPHPMailer(); $pmail->addTo($mail); $pmail->setFrom($mailFrom,$mailName); $pmail->setSubject($subject); $pmail->setBody($mailBody); if (!$pmail->send()){ $messagev = 'メール送信時にエラーが発生しました。:MAIN ERROR B001'; } } } header("location:https://lolipop-mederukai.ssl-lolipop.jp/sp/form/finish.html"); //include('finish.html'); exit; } //確認 ////////////////////////////////// if($mode == "c"){ $err = 0; $er1 = ''; if($name1 == "" || $name2 == ""){ $name_error = $er1.'入力して下さい。'.$er2; $err = 1; }else if(confirm_check_html($name1) || confirm_check_html($name2)){ $name_error = $er1.'HTMLタグ(< >で挟まれた文字列)は入力できません'.$er2; $err = 1; } $kana1 = mb_convert_kana($kana1, "cH", "UTF-8"); $kana2 = mb_convert_kana($kana2, "cH", "UTF-8"); if($kana1 == "" || $kana2 == ""){ $kana_error = $er1.'入力して下さい。'.$er2; $err = 1; }else if(mb_ereg("[^ぁ-んー  ・]", $kana1) || mb_ereg("[^ぁ-んー  ・]", $kana2)) { $kana_error = $er1.'全角ひらがなで入力して下さい。'.$er2; $err = 1; }else if(confirm_check_html($kana1) || confirm_check_html($kana2)){ $kana_error = $er1.'HTMLタグ(< >で挟まれた文字列)は入力できません'; $err = 1; } $zip1 = mb_convert_kana($zip1, "a", "UTF-8"); $zip2 = mb_convert_kana($zip2, "a", "UTF-8"); if($zip1 == "" || $zip2 == ""){ $zip_error = $er1.' 入力して下さい。'.$er2; $err = 1; }else if(!preg_match('/[0-9]{3}/', $zip1) || !preg_match('/[0-9]{4}/', $zip2)){ $zip_error = $er1.'半角数字でただしく入力して下さい'.$er2; $err = 1; } if($pref == ""){ $pref_error = $er1.'選択して下さい。'.$er2; $err = 1; } if($add1 == ""){ $add1_error = $er1.'入力して下さい。'.$er2; $err = 1; }else if(confirm_check_html($add1)){ $add1_error = $er1.'HTMLタグ(< >で挟まれた文字列)は入力できません'.$er2; $err = 1; } $age = mb_convert_kana($age, "a", "UTF-8"); if($age == ""){ $age_error = $er1.'入力して下さい。'.$er2; $err = 1; }else if(!preg_match('/[0-9]/', $age)){ $age_error = $er1.'半角数字で入力して下さい'.$er2; $err = 1; } $tel1 = mb_convert_kana($tel1, "a", "UTF-8"); $tel2 = mb_convert_kana($tel2, "a", "UTF-8"); $tel3 = mb_convert_kana($tel3, "a", "UTF-8"); if($tel1 == "" || $tel2 == "" || $tel3 == ""){ $tel_error = $er1.'入力して下さい。'.$er2; $err = 1; }else if(!preg_match('/[0-9]/', $tel1) || !preg_match('/[0-9]/', $tel2) || !preg_match('/[0-9]/', $tel3)){ $tel_error = $er1.'半角数字で入力して下さい'.$er2; $err = 1; } if($mail == ""){ $mail_error = $er1.'入力して下さい。'.$er2; $err = 1; }else if(!preg_match("/^([a-zA-Z0-9])+([a-zA-Z0-9\._-])*@([a-zA-Z0-9_-])+([a-zA-Z0-9\._-]+)+$/", $mail)){ $mail_error = $er1.'メールアドレスを正しく入力して下さい。'.$er2; $err = 1; } //入力エラーがない場合 //確認画面へ if(!$err){ //チケット $_SESSION['ticket'] = md5(uniqid().mt_rand()); $ticket = ''; include('confirm.html'); //エラーあり }else{ $mode = "r"; } } //再編集 ////////////////////////////////// if($mode == "r"){ include('form.html'); } //フォーム ////////////////////////////////// if($mode == ""){ include('form.html'); } function confirm_check_html($j) { //改行やスペースを除去してからチェック if(preg_match('/<.+?>/', preg_replace('/[\s\r\n]/','',htmlspecialchars_decode($j)))){ return ture; } return false; } ?>