array(3,18))); Check::set_def($g_item_def,"kana" ,"お名前(フリガナ)" ,array(CT_NEED,CT_LEN => array(3,26))); Check::set_def($g_item_def,"sex" ,"性別" ,array(CT_NEED)); Check::set_def($g_item_def,"mail" ,"メールアドレス" ,array(CT_NEED,CT_NARROW,CT_MAIL)); Check::set_def($g_item_def,"address" ,"ご住所" ,array(CT_NEED,CT_LEN => array(3,400))); Check::set_def($g_item_def,"address2" ,"勤務先ご住所" ,array(CT_NEED,CT_LEN => array(3,400))); Check::set_def($g_item_def,"address3" ,"研修費請求書送付先ご住所" ,array(CT_NEED,CT_LEN => array(3,400))); Check::set_def($g_item_def,"tel" ,"連絡先電話番号" ,array(CT_NEED, CT_TEL)); Check::set_def($g_item_def,"tel2" ,"勤務先電話番号" ,array(CT_NEED, CT_TEL)); Check::set_def($g_item_def,"job" ,"職種" ,array(CT_NEED,CT_LEN => array(3,128))); } /* メイン */ //================================================================================= //共通処理 switch(TRUE) { default: //現在の申し込み数をチェックする。 $path = LOG_DIR."log.txt"; $o_csv = new Csv($path); $log = $o_csv->get_array(); if($log[0] == NULL) $log[0] = 0; //登録数が制限数を超えた場合 if($log[0][0] >= REG_LIMIT) { $limit_flg = 1; } break; } //テンプレートHTML取得 $temp_html = basename($_SERVER['SCRIPT_NAME'],PHP_EXT) . TMP_EXT; //受注情報を確認するとき switch($mode) { //入力チェック時 case MODE_CONFIRM: //入力チェックエラーがあった場合、エラーを取得 if (!Check::batch($g_item_def,$arr_item,NULL,$warning)) { $err_arr = Check::get_err_msg($g_item_def,$warning); } //エラーが無い場合 if(!$err_arr) { //テンプレートを変更(確認画面) $temp_html = "regist_confirm".TMP_EXT; } break; //問合せ登録確定時 case MODE_REGIST: //エラーが無い場合 if(!$err_msg) { //お客様情報をメール本文として生成 $mail_order .= MAIL_HORISON1."<1.受講について>".LF.LF; $mail_order .= "【日本静脈経腸栄養学会への入会】".LF.$arr_item['join'].LF.LF; $mail_order .= "【ご希望の受験年度】".LF.$arr_item['year'].LF.LF; $mail_order .= "【ご希望受講コース】".LF.$arr_item['course'].LF.LF; $mail_order .= MAIL_HORISON1."<2.受講者情報>".LF.LF; $mail_order .= "【氏   名】".LF.$arr_item['name']."様".LF.LF; $mail_order .= "【氏 名 カナ】".LF.$arr_item['kana']."様".LF.LF; $mail_order .= "【性   別】".LF.$arr_item['sex'].LF.LF; $mail_order .= "【ご 住 所】".LF.$arr_item['address'].LF.LF; $mail_order .= "【お電話番号】".LF.$arr_item['tel'].LF.LF; $mail_order .= "【 E-mail 】".LF.$arr_item['mail'].LF.LF; $mail_order .= MAIL_HORISON1."<3.勤務先情報>".LF.LF; $mail_order .= "【職   種】".LF.$arr_item['job'].LF.LF; $mail_order .= "【勤務先住所】".LF.$arr_item['address2'].LF.LF; $mail_order .= "【勤務先電話番号】".LF.$arr_item['tel2'].LF.LF; $mail_order .= MAIL_HORISON1."<4.請求について>".LF.LF; $mail_order .= "【請求書送付先住所】".LF.$arr_item['address3'].LF.LF.MAIL_HORISON1; //メールテンプレート内に代入置き換え $mtmp_reg["value"] = str_replace("[NAME]", $arr_item['name'], $mtmp_reg['value']); $mtmp_reg["value"] = str_replace("[ORDER]", $mail_order, $mtmp_reg['value']); //メール送信クラス生成 $mail =& new MailSend(); $mail->header_to(FALSE); //メール情報設定(固定項目) $mail->subject($mtmp_reg['subject']); $mail->from(MM_SENDER,MM_SENDER_NAME); //差出人 $mail->reply_to(MM_SENDER,MM_SENDER_NAME); //返信先 $mail->error_return(MM_SENDER); //エラー時送信先を設定 → 推奨(Envelopeを設定) //メール本文取得 $body = $mtmp_reg['value']; //メール本文取得(管理者向け) $body_admin = $mtmp_reg['value']; //メール情報設定(変動項目) $mail->to($arr_item['mail'],$arr_item['name']."様",TRUE); $mail->body($body,TRUE); //メール送信 if (!$mail->send()) { //エラー時、失敗した会員情報を格納 $err_msg = "メール送信失敗しました。"; }else{ //管理者にメール送信 $mail->subject("【短期】研修プログラム申込"); $mail->to(MM_SENDER,MM_SENDER_NAME,TRUE); $mail->body($body_admin,TRUE); if (!$mail->send()) { //エラー時、失敗した会員情報を格納 $err_msg = "メール送信失敗しました。"; } } } //エラーが無い場合 if(!$err_msg) { $log[0] = abs($log[0][0])+1; $csv_arr[] = $log; $o_csv->write_ex($csv_arr,FALSE); header("Location: ./regist.php?mode=".MODE_COMPLETE); } break; case MODE_COMPLETE: //テンプレートを変更(完了画面) $temp_html = "regist_end".TMP_EXT; break; } /* テンプレート描画 */ //================================================================================= //Smarty生成 $smt =& get_smarty(); $smt->assign("now", $now); $smt->assign("msg", $msg); $smt->assign("err_msg", $err_msg); $smt->assign("err_login", $err_login); $smt->assign("err_arr", $err_arr); $smt->assign("limit_flg", $limit_flg); $smt->assign("arr_item", $arr_item); //画面表示 $smt->display($temp_html); //================================================================================= // function //================================================================================= //****************************************************************************** // // // // ?>