DATE_DEADLINE){ $EX = "END"; } /* 1.応募フォーム画面 */ if($EX == ''){ ### 「都道府県」Select句作成処理 $Apl_Select_Pref = Mak_Select_Pref(''); ### 応募件数取得処理 $CNT_A = Get_A_Prise_Num(); ### A賞応募件数がリミット件数を超えたらA賞締め切り if($CNT_A >= LIMIT_A){ $END_A = TRUE; $arg["MSG_END_A"] = MSG_END_A; } ### 「賞品選択」Select句作成処理 $Apl_Select_Prize = Mak_Select_Prize('', $END_A); $VIEW_HTML = FILE_HTML_FORM; $arg["Apl_Select_Pref"] = $Apl_Select_Pref; $arg["Apl_Select_Prize"] = $Apl_Select_Prize; /* 2.応募確認画面(入力エラー時は応募フォーム画面にエラーメッセージを表示) */ }elseif($EX == 'CHK'){ ### 応募データ取得 if(isset($_POST{'Apl_Name1'})){ $Apl_Name1 = $_POST{'Apl_Name1'}; } if(isset($_POST{'Apl_Name2'})){ $Apl_Name2 = $_POST{'Apl_Name2'}; } if(isset($_POST{'Apl_Furigana1'})){ $Apl_Furigana1 = $_POST{'Apl_Furigana1'}; } if(isset($_POST{'Apl_Furigana2'})){ $Apl_Furigana2 = $_POST{'Apl_Furigana2'}; } if(isset($_POST{'Apl_Corp'})){ $Apl_Corp = $_POST{'Apl_Corp'}; } if(isset($_POST{'Apl_Section'})){ $Apl_Section = $_POST{'Apl_Section'}; } if(isset($_POST{'Apl_PostNo1'})){ $Apl_PostNo1 = $_POST{'Apl_PostNo1'}; } if(isset($_POST{'Apl_PostNo2'})){ $Apl_PostNo2 = $_POST{'Apl_PostNo2'}; } if(isset($_POST{'Apl_Pref'})){ $Apl_Pref = $_POST{'Apl_Pref'}; } if(isset($_POST{'Apl_Address1'})){ $Apl_Address1 = $_POST{'Apl_Address1'}; } if(isset($_POST{'Apl_Address2'})){ $Apl_Address2 = $_POST{'Apl_Address2'}; } if(isset($_POST{'Apl_Tel1'})){ $Apl_Tel1 = $_POST{'Apl_Tel1'}; } if(isset($_POST{'Apl_Tel2'})){ $Apl_Tel2 = $_POST{'Apl_Tel2'}; } if(isset($_POST{'Apl_Tel3'})){ $Apl_Tel3 = $_POST{'Apl_Tel3'}; } if(isset($_POST{'Apl_Email'})){ $Apl_Email = $_POST{'Apl_Email'}; } if(isset($_POST{'Apl_SerialNo1'})){ $Apl_SerialNo1 = $_POST{'Apl_SerialNo1'}; } if(isset($_POST{'Apl_SerialNo2'})){ $Apl_SerialNo2 = $_POST{'Apl_SerialNo2'}; } if(isset($_POST{'Apl_cocoaID'})){ $Apl_cocoaID = $_POST{'Apl_cocoaID'}; } if(isset($_POST{'Apl_Prize'})){ $Apl_Prize = $_POST{'Apl_Prize'}; } if(isset($_POST{'Apl_Keyword'})){ $Apl_Keyword = $_POST{'Apl_Keyword'}; } ### テキスト入力データの整理(スペース削除、サニタイジング、XXS対策など) $Apl_Name1 = Arg_InputData($Apl_Name1); $Apl_Name2 = Arg_InputData($Apl_Name2); $Apl_Furigana1 = Arg_InputData($Apl_Furigana1); $Apl_Furigana2 = Arg_InputData($Apl_Furigana2); $Apl_Corp = Arg_InputData($Apl_Corp); $Apl_Section = Arg_InputData($Apl_Section); $Apl_PostNo1 = Arg_InputData($Apl_PostNo1); $Apl_PostNo2 = Arg_InputData($Apl_PostNo2); $Apl_Address1 = Arg_InputData($Apl_Address1); $Apl_Address2 = Arg_InputData($Apl_Address2); $Apl_Tel1 = Arg_InputData($Apl_Tel1); $Apl_Tel2 = Arg_InputData($Apl_Tel2); $Apl_Tel3 = Arg_InputData($Apl_Tel3); $Apl_Email = Arg_InputData($Apl_Email); $Apl_SerialNo1 = Arg_InputData($Apl_SerialNo1); $Apl_SerialNo2 = Arg_InputData($Apl_SerialNo2); $Apl_cocoaID = Arg_InputData($Apl_cocoaID); $Apl_Keyword = Arg_InputData($Apl_Keyword); ### 入力データチェック # 「お名前」 $ERR_Apl_Name = Chk_Input("APL_NAME", $Apl_Name1); if($ERR_Apl_Name == ""){ $ERR_Apl_Name = Chk_Input("APL_NAME", $Apl_Name2); } if($ERR_Apl_Name != ""){ $ERROR = TRUE; } # 「ふりがな」 $ERR_Apl_Furigana = Chk_Input("APL_FURIGANA", $Apl_Furigana1); if($ERR_Apl_Furigana == ""){ $ERR_Apl_Furigana = Chk_Input("APL_FURIGANA", $Apl_Furigana2); } if($ERR_Apl_Furigana != ""){ $ERROR = TRUE; } # 「法人名」 $ERR_Apl_Corp = Chk_Input("APL_CORP", $Apl_Corp); if($ERR_Apl_Corp != ""){ $ERROR = TRUE; } # 「部署名」 $ERR_Apl_Section = Chk_Input("APL_SECTION", $Apl_Section); if($ERR_Apl_Section != ""){ $ERROR = TRUE; } # 「郵便番号」 $Apl_PostNo = $Apl_PostNo1 . $Apl_PostNo2; $ERR_Apl_PostNo = Chk_Input("APL_POSTNO", $Apl_PostNo); if($ERR_Apl_PostNo != ""){ $ERROR = TRUE; } # 「都道府県」 $ERR_Apl_Pref = Chk_Input("APL_PREF", $Apl_Pref); if($ERR_Apl_Pref != ""){ $ERROR = TRUE; } # 「送付先住所:市区町村〜」 $ERR_Apl_Address1 = Chk_Input("APL_ADDRESS1", $Apl_Address1); if($ERR_Apl_Address1 != ""){ $ERROR = TRUE; } # 「送付先住所:建物名」 $ERR_Apl_Address2 = Chk_Input("APL_ADDRESS2", $Apl_Address2); if($ERR_Apl_Address2 != ""){ $ERROR = TRUE; } # 「電話番号」 $ERR_Apl_Tel = Chk_Input("APL_TEL", $Apl_Tel1); if($ERR_Apl_Tel == ""){ $ERR_Apl_Tel = Chk_Input("APL_TEL", $Apl_Tel2); } if($ERR_Apl_Tel == ""){ $ERR_Apl_Tel = Chk_Input("APL_TEL", $Apl_Tel3); } if($ERR_Apl_Tel != ""){ $ERROR = TRUE; } # 「E-mailアドレス」 $ERR_Apl_Email = Chk_Input("APL_EMAIL", $Apl_Email); if($ERR_Apl_Email != ""){ $ERROR = TRUE; } # 「Ver.7シリアルNo.」(「XXXXX-XXXXXXXX」の形式で入る) $Apl_SerialNo = $Apl_SerialNo1 . "-" . $Apl_SerialNo2; $ERR_Apl_SerialNo = Chk_Input("APL_SERIALNO", $Apl_SerialNo); if($ERR_Apl_SerialNo != ""){ $ERROR = TRUE; } # 「cocoaID」 $ERR_Apl_cocoaID = Chk_Input("APL_COCOAID", $Apl_cocoaID); if($ERR_Apl_cocoaID != ""){ $ERROR = TRUE; } # 「賞品選択」 $ERR_Apl_Prize = Chk_Input("APL_PRIZE", $Apl_Prize); if($ERR_Apl_Prize != ""){ $ERROR = TRUE; } # 「キーワード」 $ERR_Apl_Keyword = Chk_Input("APL_KEYWORD", $Apl_Keyword); if($ERR_Apl_Keyword != ""){ $ERROR = TRUE; } # 「Ver.7シリアルNo.」二重登録チェック if(Chk_DoubleAplly("APL_SERIALNO", $Apl_SerialNo)){ $ERR_Apl_SerialNo = ERR_APL_SERIALNO_NG; } if($ERR_Apl_SerialNo != ""){ $ERROR = TRUE; } # プレゼント用「Ver.7シリアルNo.」チェック(プレゼント用シリアルと一致した場合、エラーとなる) if(Chk_Present_Serial($Apl_SerialNo)){ $ERR_Apl_SerialNo = ERR_APL_SERIALNO_NG; } if($ERR_Apl_SerialNo != ""){ $ERROR = TRUE; } ### エラー時→応募フォーム画面へ戻り、エラーメッセージ表示(応募フォームデータは保持) if($ERROR){ $VIEW_HTML = FILE_HTML_FORM; ### 「都道府県」Select句作成処理 $Apl_Select_Pref = Mak_Select_Pref($Apl_Pref); ### 応募件数取得処理 $CNT_A = Get_A_Prise_Num(); ### A賞応募件数がリミット件数を超えたらA賞締め切り if($CNT_A >= LIMIT_A){ $END_A = TRUE; $arg["MSG_END_A"] = MSG_END_A; } ### 「賞品選択」Select句作成処理 $Apl_Select_Prize = Mak_Select_Prize($Apl_Prize, $END_A); $arg["ERR_MSSG"] = ERR_MSSG; $arg["ERR_Apl_Name"] = $ERR_Apl_Name; $arg["ERR_Apl_Furigana"] = $ERR_Apl_Furigana; $arg["ERR_Apl_Corp"] = $ERR_Apl_Corp; $arg["ERR_Apl_Section"] = $ERR_Apl_Section; $arg["ERR_Apl_PostNo"] = $ERR_Apl_PostNo; $arg["ERR_Apl_Pref"] = $ERR_Apl_Pref; $arg["ERR_Apl_Address1"] = $ERR_Apl_Address1; $arg["ERR_Apl_Address2"] = $ERR_Apl_Address2; $arg["ERR_Apl_Tel"] = $ERR_Apl_Tel; $arg["ERR_Apl_Email"] = $ERR_Apl_Email; $arg["ERR_Apl_SerialNo"] = $ERR_Apl_SerialNo; $arg["ERR_Apl_cocoaID"] = $ERR_Apl_cocoaID; $arg["ERR_Apl_Prize"] = $ERR_Apl_Prize; $arg["ERR_Apl_Keyword"] = $ERR_Apl_Keyword; ### 正常時→確認画面へ進み、応募フォームデータを表示 }else{ ### 「希望賞品」の日本語化 $V_Apl_Prize = ""; if($Apl_Prize == 'A'){ $V_Apl_Prize = NAME_PRIZE_A; }elseif($Apl_Prize == 'B'){ $V_Apl_Prize = NAME_PRIZE_B; } ### 「法人」欄が両方とも未入力の場合、「法人」欄を表示させない $Houjin_Ran = ""; if(($Apl_Corp == '') AND ($Apl_Section == '')){ }else{ $Houjin_Ran = "" . "法人:" . "" . "" . "" . "" . "" . "
法人名: $Apl_Corp
部署名: $Apl_Section
 
"; $arg["Houjin_Ran"] = $Houjin_Ran; } $VIEW_HTML = FILE_HTML_CHECK; $REG_DATA = "$Apl_Name1,$Apl_Name2,$Apl_Furigana1,$Apl_Furigana2,$Apl_Corp,$Apl_Section,$Apl_PostNo1-$Apl_PostNo2,$Apl_Pref,$Apl_Address1,$Apl_Address2,$Apl_Tel1-$Apl_Tel2-$Apl_Tel3,$Apl_Email,$Apl_SerialNo1-$Apl_SerialNo2,$Apl_cocoaID,$Apl_Prize"; } $arg["Apl_Name1"] = $Apl_Name1; $arg["Apl_Name2"] = $Apl_Name2; $arg["Apl_Furigana1"] = $Apl_Furigana1; $arg["Apl_Furigana2"] = $Apl_Furigana2; $arg["Apl_Corp"] = $Apl_Corp; $arg["Apl_Section"] = $Apl_Section; $arg["Apl_PostNo1"] = $Apl_PostNo1; $arg["Apl_PostNo2"] = $Apl_PostNo2; $arg["Apl_Pref"] = $Apl_Pref; $arg["Apl_Select_Pref"] = $Apl_Select_Pref; $arg["Apl_Address1"] = $Apl_Address1; $arg["Apl_Address2"] = $Apl_Address2; $arg["Apl_Tel1"] = $Apl_Tel1; $arg["Apl_Tel2"] = $Apl_Tel2; $arg["Apl_Tel3"] = $Apl_Tel3; $arg["Apl_Email"] = $Apl_Email; $arg["Apl_SerialNo1"] = $Apl_SerialNo1; $arg["Apl_SerialNo2"] = $Apl_SerialNo2; $arg["Apl_cocoaID"] = $Apl_cocoaID; $arg["Apl_Prize_Data"] = $Apl_Prize; $arg["Apl_Prize"] = $V_Apl_Prize; $arg["Apl_Select_Prize"] = $Apl_Select_Prize; $arg["Apl_Keyword"] = $Apl_Keyword; $arg["REG_DATA"] = $REG_DATA; // 応募登録データ /* 3.応募登録完了画面 */ }elseif($EX == 'REG'){ $MIDASHI = ""; $MSSG = ""; $NEW_REG_DATA = ""; $Apl_Prize_reg = ""; $NOW = date("YmdHis", time()); // 現在の日時(YYYYMMDDHHNNSS) ### 応募データ取得 if(isset($_POST{'REG_DATA'})){ $NEW_REG_DATA = $_POST{'REG_DATA'}; } if(isset($_POST{'Apl_Prize'})){ $Apl_Prize_reg = $_POST{'Apl_Prize'}; } $NEW_REG_DATA = $NOW . "," . $NEW_REG_DATA . "\n"; ### ファイルに登録済みのデータを取得し、新データと接続 $FR = @fopen(FILE_APL_DATA, "r") or die(FILE_APL_DATA . " の読み込みオープンエラー"); while(!feof($FR)){ $F_DATA = fgets($FR); $REG_DATA .= $F_DATA; } fclose($FR); ### ここでも二重登録対策を取る【文字コード切替のあとで 2006/10/26 K.Takeuchi(BP)】 $NEW_REG_DATA = mb_convert_encoding($NEW_REG_DATA, "SJIS", "EUC-JP"); // EUC→SJIS if(Chk_DoubleAplly_ALL($NEW_REG_DATA)){ $ERR_Apl_SerialNo = ERR_APL_SERIALNO_NG; } if($ERR_Apl_SerialNo != ""){ $ERROR = TRUE; } // 正常時 if($ERROR == FALSE){ $REG_DATA .= $NEW_REG_DATA; # $REG_DATA = mb_convert_encoding($REG_DATA, "SJIS", "EUC-JP"); // EUC→SJIS ### 応募データをファイルに登録 $FW = @fopen(FILE_APL_DATA, "w") or die(FILE_APL_DATA . " の書き込みオープンエラー"); flock($FW, LOCK_EX); fputs($FW, $REG_DATA); flock($FW, LOCK_UN); fclose($FW); $MIDASHI = MSG_MIDASHI; $MSSG1 = MSG_REG_MSSG1; ### A賞・B賞とで、メッセージを切り替える。 if($Apl_Prize_reg == 'A'){ $MSSG2 = MSG_REG_A; }elseif($Apl_Prize_reg == 'B'){ $MSSG2 = MSG_REG_B; } // エラー時 }else{ $MIDASHI = MSG_MIDASHI_ERR; $MSSG1 = MSG_REG_MSSG1_ERR; $MSSG2 = MSG_REG_MSSG2_ERR; } ### 「応募登録完了画面」を表示 $VIEW_HTML = FILE_HTML_REGIST; $arg["MIDASHI"] = $MIDASHI; $arg["MSSG1"] = $MSSG1; $arg["MSSG2"] = $MSSG2; /* 4.キャンペーン終了画面 */ }elseif($EX == 'END'){ ### 「キャンペーン終了画面」を表示 $VIEW_HTML = FILE_HTML_END; } ## 画面表示 htmltemplate::t_include($VIEW_HTML, $arg); ?>