Changeset 19830 for branches/version-2_5-dev/data
- Timestamp:
- 2011/01/05 22:10:58 (13 years ago)
- Location:
- branches/version-2_5-dev/data
- Files:
-
- 8 deleted
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_5-dev/data/Smarty/templates/default/entry/kiyaku.tpl
r19785 r19830 30 30 readonly="readonly"><!--{$tpl_kiyaku_text}--></textarea> 31 31 <div class="tblareabtn"> 32 <!--{if $is_campaign}-->33 <a href="javascript:history.back();" onmouseover="chgImg('<!--{$TPL_DIR}-->img/button/btn_entry_cannot_on.gif','b_noagree');" onmouseout="chgImg('<!--{$TPL_DIR}-->img/button/btn_entry_cannot.gif','b_noagree');">34 <img src="<!--{$TPL_DIR}-->img/button/btn_entry_cannot.gif" width="180" height="30" alt="同意しない" border="0" name="b_noagree" /></a> 35 <!--{else}-->36 32 <a href="<!--{$smarty.const.URL_SITE_TOP}-->" onmouseover="chgImg('<!--{$TPL_DIR}-->img/button/btn_entry_cannot_on.gif','b_noagree');" onmouseout="chgImg('<!--{$TPL_DIR}-->img/button/btn_entry_cannot.gif','b_noagree');"> 37 33 <img src="<!--{$TPL_DIR}-->img/button/btn_entry_cannot.gif" width="180" height="30" alt="同意しない" border="0" name="b_noagree" /></a> 38 <!--{/if}-->39 34 <a href="<!--{$smarty.const.URL_ENTRY_TOP}-->" onmouseover="chgImg('<!--{$TPL_DIR}-->img/button/btn_entry_agree_on.gif','b_agree');" onmouseout="chgImg('<!--{$TPL_DIR}-->img/button/btn_entry_agree.gif','b_agree');"> 40 35 <img src="<!--{$TPL_DIR}-->img/button/btn_entry_agree.gif" width="180" height="30" alt="規約に同意して会員登録" border="0" name="b_agree" /></a> -
branches/version-2_5-dev/data/Smarty/templates/mobile/entry/confirm.tpl
r19785 r19830 26 26 <form name="form1" id="form1" method="post" action="<!--{$smarty.server.PHP_SELF|h}-->" utn> 27 27 <input type="hidden" name="mode" value="complete"> 28 <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" /> 28 29 <!--{foreach from=$list_data key=key item=item}--> 29 30 <input type="hidden" name="<!--{$key|h}-->" value="<!--{$item|h}-->"> … … 55 56 <input type="submit" name="submit" value="登録"><br> 56 57 <input type="submit" name="return" value="戻る"> 57 58 <!--{foreach from=$list_data key=key item=item}-->59 <input type="hidden" name="<!--{$key|h}-->" value="<!--{$item|h}-->">60 <!--{/foreach}-->61 58 </form> 62 59 -
branches/version-2_5-dev/data/Smarty/templates/mobile/entry/index.tpl
r19785 r19830 22 22 */ 23 23 *}--> 24 <div align="center">会員情報入力 1/3</div>24 <div align="center">会員情報入力 </div> 25 25 <hr> 26 26 <form name="form1" method="post" action="<!--{$smarty.server.PHP_SELF|h}-->"> 27 <input type="hidden" name="mode" value="set1">28 27 <input type="hidden" name="mode" value="confirm" /> 28 <input type="hidden" name="<!--{$smarty.const.TRANSACTION_ID_NAME}-->" value="<!--{$transactionid}-->" /> 29 29 <font color="#FF0000">*は必須項目です。</font><br> 30 30 <br> … … 65 65 <font color="#FF0000"><!--{$arrErr.kana01}--><!--{$arrErr.kana02}--></font> 66 66 67 カナ/姓(例:シブヤ)< br>67 カナ/姓(例:シブヤ)<font color="#FF0000">※</font><br> 68 68 <input type="text" name="kana01" value="<!--{$kana01|h}-->" maxlength="<!--{$smarty.const.STEXT_LEN}-->" istyle="2"><br> 69 69 70 カナ/名(例:ハナコ)< br>70 カナ/名(例:ハナコ)<font color="#FF0000">※</font><br> 71 71 <input type="text" name="kana02" value="<!--{$kana02|h}-->" maxlength="<!--{$smarty.const.STEXT_LEN}-->" istyle="2"><br> 72 73 【性別】<font color="#FF0000">*</font><br> 74 <font color="#FF0000"><!--{$arrErr.sex}--></font> 75 <input type="radio" name="sex" value="1" <!--{if $sex eq 1}-->checked<!--{/if}--> />男性 <input type="radio" name="sex" value="2" <!--{if $sex eq 2}-->checked<!--{/if}--> />女性<br> 76 77 【生年月日】<br> 78 <font color="#FF0000"><!--{$arrErr.year}--><!--{$arrErr.month}--><!--{$arrErr.day}--></font> 79 <input type="text" name="year" value="<!--{$year|h}-->" size="4" maxlength="4" istyle="4">年<br> 80 <select name="month"> 81 <!--{html_options options=$arrMonth selected=$month}--> 82 </select>月<br> 83 <select name="day"> 84 <!--{html_options options=$arrDay selected=$day}--> 85 </select>日<br> 86 87 <!--{assign var=key1 value="zip01"}--> 88 <!--{assign var=key2 value="zip02"}--> 89 【郵便番号】<font color="#FF0000">*</font><br> 90 <font color="#FF0000"><!--{$arrErr[$key1]}--><!--{$arrErr[$key2]}--></font> 91 <!--{assign var="size1" value="`$smarty.const.ZIP01_LEN+2`"}--> 92 <!--{assign var="size2" value="`$smarty.const.ZIP02_LEN+2`"}--> 93 <input size="<!--{$size1}-->" type="text" name="zip01" value="<!--{if $zip01 == ""}--><!--{$arrOtherDeliv.zip01|h}--><!--{else}--><!--{$zip01|h}--><!--{/if}-->" maxlength="<!--{$smarty.const.ZIP01_LEN}-->" istyle="4"> 94 - 95 <input size="<!--{$size2}-->" type="text" name="zip02" value="<!--{if $zip02 == ""}--><!--{$arrOtherDeliv.zip02|h}--><!--{else}--><!--{$zip02|h}--><!--{/if}-->" maxlength="<!--{$smarty.const.ZIP02_LEN}-->" istyle="4"><br> 96 97 【都道府県】<font color="#FF0000">*</font><br> 98 <font color="#FF0000"><!--{$arrErr.pref}--></font> 99 <select name="pref"> 100 <option value="">都道府県を選択</option> 101 <!--{html_options options=$arrPref selected=$pref}--> 102 </select><br> 103 104 【住所1】<font color="#FF0000">*</font><br> 105 <font color="#FF0000"><!--{$arrErr.addr01}--></font> 106 <input type="text" name="addr01" value="<!--{$addr01|h}-->" istyle="1"><br> 107 108 【住所2】<font color="#FF0000">*</font><br> 109 <font color="#FF0000"><!--{$arrErr.addr02}--></font> 110 <input type="text" name="addr02" value="<!--{$addr02|h}-->" istyle="1"><br> 111 112 【電話番号】<font color="#FF0000">*</font><br> 113 <font color="#FF0000"><!--{$arrErr.tel01}--><!--{$arrErr.tel02}--><!--{$arrErr.tel03}--></font> 114 <!--{assign var="size" value="`$smarty.const.TEL_ITEM_LEN+2`"}--> 115 <input type="text" size="<!--{$size}-->" name="tel01" value="<!--{$tel01|h}-->" maxlength="<!--{$smarty.const.TEL_ITEM_LEN}-->" istyle="4"> 116 - 117 <input type="text" size="<!--{$size}-->" name="tel02" value="<!--{$tel02|h}-->" maxlength="<!--{$smarty.const.TEL_ITEM_LEN}-->" istyle="4"> 118 - 119 <input type="text" size="<!--{$size}-->" name="tel03" value="<!--{$tel03|h}-->" maxlength="<!--{$smarty.const.TEL_ITEM_LEN}-->" istyle="4"><br> 120 121 【メールマガジン】<br> 122 お得な情報を希望されますか?<br> 123 配信希望<input type="checkbox" name="mailmaga_flg" value="on" <!--{if $mailmaga_flg eq 'on' || $mailmaga_flg == 2}-->checked<!--{/if}--> /><br> 124 (希望されない場合はチェックをはずしてください)<br> 125 <br> 72 126 73 127 <input type="submit" name="submit" value="次へ"> -
branches/version-2_5-dev/data/Smarty/templates/mobile/entry/kiyaku.tpl
r19785 r19830 23 23 *}--> 24 24 <div align="center">ご利用規約</div> 25 <!--{if $offset eq 1}--> 26 <hr> 27 ご注文に際して必要な内容(ご自宅住所等)をご登録していただきます。<br> 28 ご利用の規約をよくお読みの上、ご登録下さい。<br> 29 <!--{/if}--> 25 30 <hr> 26 31 <!--{$tpl_kiyaku_text|h|nl2br}--><br> 27 32 28 33 <BR> 29 <!--{if $ offset != -1}-->30 <a href="kiyaku.php?offset=<!--{$offset }-->">次へ→</a><br><br>34 <!--{if $max >= $offset+1}--> 35 <a href="kiyaku.php?offset=<!--{$offset+1}-->">次へ→</a><br><br> 31 36 <!--{/if}--> 32 37 -
branches/version-2_5-dev/data/class/pages/entry/LC_Page_Entry.php
r19805 r19830 171 171 $CONF = $objDb->sfGetBasisData(); 172 172 173 $ssl_url = rtrim(HTTPS_URL,"/"); 174 $ssl_url .= $_SERVER['PHP_SELF']; 175 176 // 規約ページからの遷移でなければエラー画面へ遷移する 177 if (empty($_POST) && !preg_match('/kiyaku.php/', basename($_SERVER['HTTP_REFERER']))) { 178 SC_Utils_Ex::sfDispSiteError(PAGE_ERROR, "", true); 179 } 180 181 //---- 登録用カラム配列 173 // PC時は規約ページからの遷移でなければエラー画面へ遷移する 174 $this->lfCheckReferer(); 175 176 //---- 登録用カラム配列 182 177 $arrRegistColumn = array( 183 178 array( "column" => "name01", "convert" => "aKV" ), … … 217 212 218 213 if ($_SERVER["REQUEST_METHOD"] == "POST") { 219 214 215 //CSRF対策 220 216 if (!SC_Helper_Session_Ex::isValidToken()) { 221 217 SC_Utils_Ex::sfDispSiteError(PAGE_ERROR, "", true); … … 223 219 224 220 // 空白・改行の削除 225 $_POST["name01"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["name01"]); 226 $_POST["name02"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["name02"]); 227 $_POST["kana01"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["kana01"]); 228 $_POST["kana02"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["kana02"]); 229 $_POST["zip01"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["zip01"]); 230 $_POST["zip02"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["zip02"]); 231 $_POST["addr01"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["addr01"]); 232 $_POST["addr02"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["addr02"]); 233 $_POST["tel01"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["tel01"]); 234 $_POST["tel02"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["tel02"]); 235 $_POST["tel03"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["tel03"]); 236 $_POST["fax01"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["fax01"]); 237 $_POST["fax02"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["fax02"]); 238 $_POST["fax03"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["fax03"]); 239 $_POST["email"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["email"]); 240 $_POST["email02"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["email02"]); 241 $_POST["password"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["password"]); 242 $_POST["password02"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["password02"]); 243 $_POST["reminder_answer"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["reminder_answer"]); 221 foreach ($arrRegistColumn as $item){ 222 $_POST["${item["column"]}"] = preg_replace('/^[ \r\n]*(.*?)[ \r\n]*$/u', '$1', $_POST["${item["column"]}"]); 223 } 244 224 245 225 //-- POSTデータの引き継ぎ … … 247 227 248 228 // SSL用 249 $this->arrForm['ssl_url'] = $ssl_url; 250 229 $this->arrForm['ssl_url'] = rtrim(HTTPS_URL,"/").$_SERVER['PHP_SELF']; 230 231 // 251 232 $this->arrForm['email'] = strtolower($this->arrForm['email']); // emailはすべて小文字で処理 252 233 $this->arrForm['email02'] = strtolower($this->arrForm['email02']); // emailはすべて小文字で処理 … … 254 235 //-- 入力データの変換 255 236 $this->arrForm = $this->lfConvertParam($this->arrForm, $arrRegistColumn); 256 237 // mobile用 238 if (!empty($_POST["return"])) { 239 $_POST["mode"] = "return"; 240 } 241 242 257 243 //-- 入力エラーチェック 258 244 $this->arrErr = $this->lfErrorCheck($this->arrForm); 259 245 260 246 if ($this->arrErr || $_POST["mode"] == "return") { // 入力エラーのチェック 261 247 foreach($arrRegistColumn as $key) { 262 248 $this->$key['column'] = $this->arrForm[$key['column']]; 263 } 264 249 } 265 250 } else { 266 251 267 252 //-- 確認 268 253 if ($_POST["mode"] == "confirm") { 269 254 foreach($this->arrForm as $key => $val) { 270 if ($key != "mode" && $key != "subm" ) $this->list_data[ $key ] = $val;255 if ($key != "mode" && $key != "subm" && $key != "transactionid") $this->list_data[ $key ] = $val; 271 256 } 272 257 //パスワード表示 … … 329 314 $this->objDisplay->redirect($this->getLocation("./complete.php", array("ci" => $customer_id))); 330 315 exit; 316 331 317 } 332 318 } 333 319 } 334 335 320 $this->transactionid = SC_Helper_Session_Ex::getToken(); 336 }337 338 /**339 * モバイルページを初期化する.340 *341 * @return void342 */343 function mobileInit() {344 $this->init();345 $this->tpl_title .= '会員登録(1/3)'; // ページタイトル346 }347 348 /**349 * Page のプロセス(モバイル).350 *351 * @return void352 */353 function mobileProcess() {354 $this->mobileAction();355 $this->sendResponse();356 }357 358 /**359 * Page のアクション(モバイル).360 *361 * @return void362 */363 function mobileAction() {364 //---- ページ初期設定365 $objDb = new SC_Helper_DB_Ex();366 $objMobile = new SC_Helper_Mobile_Ex();367 $CONF = $objDb->sfGetBasisData(); // 店舗基本情報368 $objView = new SC_MobileView();369 $objCustomer = new SC_Customer();370 371 // 空メール372 if (isset($_SESSION['mobile']['kara_mail_from'])) {373 $_POST['email'] = $_SESSION['mobile']['kara_mail_from'];374 $this->tpl_kara_mail_from = $_POST['email'];375 } elseif (MOBILE_USE_KARA_MAIL) {376 $token = $objMobile->gfPrepareKaraMail('entry/' . DIR_INDEX_URL);377 if ($token !== false) {378 $this->tpl_mainpage = 'entry/mail.tpl';379 $this->tpl_title = '会員登録(空メール)';380 $this->tpl_kara_mail_to = MOBILE_KARA_MAIL_ADDRESS_USER . MOBILE_KARA_MAIL_ADDRESS_DELIMITER . 'entry_' . $token . '@' . MOBILE_KARA_MAIL_ADDRESS_DOMAIN;381 $this->tpl_from_address = $CONF['email03'];382 }383 }384 385 //---- 登録用カラム配列386 $arrRegistColumn = array(387 array( "column" => "name01", "convert" => "aKV" ),388 array( "column" => "name02", "convert" => "aKV" ),389 array( "column" => "kana01", "convert" => "CKV" ),390 array( "column" => "kana02", "convert" => "CKV" ),391 array( "column" => "zip01", "convert" => "n" ),392 array( "column" => "zip02", "convert" => "n" ),393 array( "column" => "pref", "convert" => "n" ),394 array( "column" => "addr01", "convert" => "aKV" ),395 array( "column" => "addr02", "convert" => "aKV" ),396 array( "column" => "email", "convert" => "a" ),397 array( "column" => "email02", "convert" => "a" ),398 array( "column" => "email_mobile", "convert" => "a" ),399 array( "column" => "email_mobile02", "convert" => "a" ),400 array( "column" => "tel01", "convert" => "n" ),401 array( "column" => "tel02", "convert" => "n" ),402 array( "column" => "tel03", "convert" => "n" ),403 array( "column" => "fax01", "convert" => "n" ),404 array( "column" => "fax02", "convert" => "n" ),405 array( "column" => "fax03", "convert" => "n" ),406 array( "column" => "sex", "convert" => "n" ),407 array( "column" => "job", "convert" => "n" ),408 array( "column" => "birth", "convert" => "n" ),409 array( "column" => "year", "convert" => "n" ),410 array( "column" => "month", "convert" => "n" ),411 array( "column" => "day", "convert" => "n" ),412 array( "column" => "reminder", "convert" => "n" ),413 array( "column" => "reminder_answer", "convert" => "aKV"),414 array( "column" => "password", "convert" => "a" ),415 array( "column" => "password02", "convert" => "a" ),416 array( "column" => "mailmaga_flg", "convert" => "n" ),417 );418 419 //---- 登録除外用カラム配列420 $arrRejectRegistColumn = array("year", "month", "day", "email02", "email_mobile02", "password02");421 422 if ($_SERVER["REQUEST_METHOD"] == "POST") {423 424 //-- POSTデータの引き継ぎ425 $this->arrForm = $_POST;426 $this->arrForm['email'] = strtolower($this->arrForm['email']); // emailはすべて小文字で処理427 428 //-- 入力データの変換429 $this->arrForm = $this->lfConvertParam($this->arrForm, $arrRegistColumn);430 431 // 戻るボタン用処理432 if (!empty($_POST["return"])) {433 switch ($_POST["mode"]) {434 case "complete":435 $_POST["mode"] = "set3";436 break;437 case "confirm":438 $_POST["mode"] = "set2";439 break;440 default:441 $_POST["mode"] = "set1";442 break;443 }444 }445 446 //-- 入力エラーチェック447 if ($_POST["mode"] == "set1") {448 $this->arrErr = $this->lfErrorCheck1($this->arrForm);449 $this->tpl_mainpage = 'entry/index.tpl';450 $this->tpl_title = '会員登録(1/3)';451 } elseif ($_POST["mode"] == "set2") {452 $this->arrErr = $this->lfErrorCheck2($this->arrForm);453 $this->tpl_mainpage = 'entry/set1.tpl';454 $this->tpl_title = '会員登録(2/3)';455 } else {456 $this->arrErr = $this->lfErrorCheck3($this->arrForm);457 $this->tpl_mainpage = 'entry/set2.tpl';458 $this->tpl_title = '会員登録(3/3)';459 }460 461 foreach($arrRegistColumn as $key) {462 $this->$key['column'] = $this->arrForm[$key['column']];463 }464 465 if ($this->arrErr || !empty($_POST["return"])) { // 入力エラーのチェック466 467 //-- データの設定468 if ($_POST["mode"] == "set1") {469 $checkVal = array("email", "password", "reminder", "reminder_answer", "name01", "name02", "kana01", "kana02");470 } elseif ($_POST["mode"] == "set2") {471 $checkVal = array("sex", "year", "month", "day", "zip01", "zip02");472 } else {473 $checkVal = array("pref", "addr01", "addr02", "tel01", "tel02", "tel03", "mailmaga_flg");474 }475 476 foreach($this->arrForm as $key => $val) {477 if ($key != "mode" && $key != "submit" && $key != "return" && $key != session_name() && !in_array($key, $checkVal))478 $this->list_data[ $key ] = $val;479 }480 481 482 483 } else {484 485 //-- テンプレート設定486 if ($_POST["mode"] == "set1") {487 $this->tpl_mainpage = 'entry/set1.tpl';488 $this->tpl_title = '会員登録(2/3)';489 } elseif ($_POST["mode"] == "set2") {490 $this->tpl_mainpage = 'entry/set2.tpl';491 $this->tpl_title = '会員登録(3/3)';492 493 if (@$this->arrForm['pref'] == "" && @$this->arrForm['addr01'] == "" && @$this->arrForm['addr02'] == "") {494 $address = SC_Utils_Ex::sfGetAddress($_REQUEST['zip01'].$_REQUEST['zip02']);495 $this->pref = @$address[0]['state'];496 $this->addr01 = @$address[0]['city'] . @$address[0]['town'];497 }498 } elseif ($_POST["mode"] == "confirm") {499 // パスワード表示500 $passlen = strlen($this->arrForm['password']);501 $this->passlen = $this->lfPassLen($passlen);502 503 // メール受け取り504 if (!isset($this->arrForm['mailmaga_flg'])) $this->arrForm['mailmaga_flg'] = "";505 if (strtolower($this->arrForm['mailmaga_flg']) == "on") {506 $this->arrForm['mailmaga_flg'] = "2";507 } else {508 $this->arrForm['mailmaga_flg'] = "3";509 }510 511 $this->tpl_mainpage = 'entry/confirm.tpl';512 $this->tpl_title = '会員登録(確認ページ)';513 514 }515 516 //-- データ設定517 unset($this->list_data);518 if ($_POST["mode"] == "set1") {519 $checkVal = array("sex", "year", "month", "day", "zip01", "zip02");520 } elseif ($_POST["mode"] == "set2") {521 $checkVal = array("pref", "addr01", "addr02", "tel01", "tel02", "tel03", "mailmaga_flg");522 } else {523 $checkVal = array();524 }525 526 foreach($this->arrForm as $key => $val) {527 if ($key != "mode" && $key != "submit" && $key != "confirm" && $key != "return" && $key != session_name() && !in_array($key, $checkVal)) {528 $this->list_data[ $key ] = $val;529 }530 }531 532 533 //-- 仮登録と完了画面534 if ($_POST["mode"] == "complete") {535 536 // 確認画面で再度エラーチェックを行う。(画面1)537 $arrErr = $this->lfErrorCheck1($this->arrForm);538 if(count($arrErr) > 0){539 $this->tpl_mainpage = 'entry/index.tpl';540 $this->tpl_title = '会員登録(1/3)';541 $this->arrErr = $arrErr;542 //---- ページ表示543 $objView->assignobj($this);544 $objView->display(SITE_FRAME);545 exit();546 }547 548 // 確認画面で再度エラーチェックを行う。(画面2)549 $arrErr = $this->lfErrorCheck2($this->arrForm);550 if(count($arrErr) > 0){551 $this->tpl_mainpage = 'entry/set1.tpl';552 $this->tpl_title = '会員登録(2/3)';553 $this->arrErr = $arrErr;554 //---- ページ表示555 $objView->assignobj($this);556 $objView->display(SITE_FRAME);557 exit();558 }559 560 // 確認画面で再度エラーチェックを行う。(画面3)561 $arrErr = $this->lfErrorCheck3($this->arrForm);562 if(count($arrErr) > 0){563 $this->tpl_mainpage = 'entry/set2.tpl';564 $this->tpl_title = '会員登録(3/3)';565 $this->arrErr = $arrErr;566 //---- ページ表示567 $objView->assignobj($this);568 $objView->display(SITE_FRAME);569 exit();570 }571 572 $this->CONF = $CONF;573 $this->uniqid = $this->lfRegistData ($this->arrForm, $arrRegistColumn, $arrRejectRegistColumn, CUSTOMER_CONFIRM_MAIL, true, $this->arrForm["email"]);574 575 // 空メールを受信済みの場合はすぐに本登録完了にする。576 if (isset($_SESSION['mobile']['kara_mail_from'])) {577 $param = array("mode" => "regist",578 "id" => $this->uniqid,579 session_name() => session_id());580 $this->objDisplay->redirect($this->getLocation(MOBILE_URL_PATH . "regist/" . DIR_INDEX_URL, $param));581 exit;582 }583 584 $this->tpl_mainpage = 'entry/complete.tpl';585 $this->tpl_title = '会員登録(完了ページ)';586 587 $objMobile->sfMobileSetExtSessionId('id', $this->uniqid, 'regist/' . DIR_INDEX_URL);588 589 // 仮登録完了メール送信590 $this->to_name01 = $_POST['name01'];591 $this->to_name02 = $_POST['name02'];592 $objMailText = new SC_MobileView();593 $objMailText->assignobj($this);594 $objHelperMail = new SC_Helper_Mail_Ex();595 $objQuery = new SC_Query();596 597 // 仮会員が有効の場合598 if(CUSTOMER_CONFIRM_MAIL == true) {599 // Moba8パラメーターを保持する場合はカラム追加600 if (isset($_SESSION['a8'])) $this->etc_value = "&a8=". $_SESSION['a8'];601 $subject = $objHelperMail->sfMakeSubject('会員登録のご確認');602 $toCustomerMail = $objMailText->fetch("mail_templates/customer_mail.tpl");603 } else {604 $subject = $objHelperMail->sfMakeSubject('会員登録のご完了');605 $toCustomerMail = $objMailText->fetch("mail_templates/customer_regist_mail.tpl");606 // ログイン状態にする607 $objCustomer->setLogin($_POST["email"]);608 }609 610 $objMail = new SC_SendMail();611 $objMail->setItem(612 '' // 宛先613 , $subject // サブジェクト614 , $toCustomerMail // 本文615 , $CONF["email03"] // 配送元アドレス616 , $CONF["shop_name"] // 配送元 名前617 , $CONF["email03"] // reply_to618 , $CONF["email04"] // return_path619 , $CONF["email04"] // Errors_to620 , $CONF["email01"] // Bcc621 );622 // 宛先の設定623 $name = $_POST["name01"] . $_POST["name02"] ." 様";624 $objMail->setTo($_POST["email"], $name);625 $objMail->sendMail();626 627 // 完了ページに移動させる。628 $this->objDisplay->redirect($this->getLocation("./complete.php"));629 exit;630 }631 }632 }633 321 } 634 322 … … 697 385 /* 698 386 secret_keyは、テーブルで重複許可されていない場合があるので、 699 本会員登録では利用されないがセットしておく。387 本会員登録では利用されないがセットしておく。 700 388 */ 701 389 $arrRegist["secret_key"] = $uniqid; // 会員登録キー … … 718 406 $arrRegist['customer_id'] = $objQuery->nextVal('dtb_customer_customer_id'); 719 407 $objQuery->insert("dtb_customer", $arrRegist); 720 721 722 /* メルマガ会員機能は現在停止中 2007/03/07 723 724 725 //-- 非会員でメルマガ登録しているかの判定 726 $sql = "SELECT count(*) FROM dtb_customer_mail WHERE email = ?"; 727 $mailResult = $objConn->getOne($sql, array($arrRegist["email"])); 728 729 //-- メルマガ仮登録実行 730 $arrRegistMail["email"] = $arrRegist["email"]; 731 if ($array["mailmaga_flg"] == 1) { 732 $arrRegistMail["mailmaga_flg"] = 4; 733 } elseif ($array["mailmaga_flg"] == 2) { 734 $arrRegistMail["mailmaga_flg"] = 5; 735 } else { 736 $arrRegistMail["mailmaga_flg"] = 6; 737 } 738 $arrRegistMail["update_date"] = "now()"; 739 740 // 非会員でメルマガ登録している場合 741 if ($mailResult == 1) { 742 $objQuery->update("dtb_customer_mail", $arrRegistMail, "email = '" .addslashes($arrRegistMail["email"]). "'"); 743 } else { // 新規登録の場合 744 $arrRegistMail["create_date"] = "now()"; 745 $objQuery->insert("dtb_customer_mail", $arrRegistMail); 746 } 747 */ 408 748 409 $objQuery->commit(); 749 410 … … 784 445 $objErr->doFunc(array("お名前(フリガナ・姓)", 'kana01', STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK", "KANA_CHECK")); 785 446 $objErr->doFunc(array("お名前(フリガナ・名)", 'kana02', STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK", "KANA_CHECK")); 447 $objErr->doFunc(array("パスワード", 'password', PASSWORD_LEN1, PASSWORD_LEN2), array("EXIST_CHECK", "SPTAB_CHECK" ,"ALNUM_CHECK", "NUM_RANGE_CHECK")); 448 $objErr->doFunc(array("パスワード確認用の質問", "reminder") ,array("SELECT_CHECK", "NUM_CHECK")); 449 $objErr->doFunc(array("パスワード確認用の質問の答え", "reminder_answer", STEXT_LEN) ,array("EXIST_CHECK","SPTAB_CHECK" , "MAX_LENGTH_CHECK")); 786 450 $objErr->doFunc(array("郵便番号1", "zip01", ZIP01_LEN ) ,array("EXIST_CHECK", "SPTAB_CHECK" ,"NUM_CHECK", "NUM_COUNT_CHECK")); 787 451 $objErr->doFunc(array("郵便番号2", "zip02", ZIP02_LEN ) ,array("EXIST_CHECK", "SPTAB_CHECK" ,"NUM_CHECK", "NUM_COUNT_CHECK")); … … 790 454 $objErr->doFunc(array("住所1", "addr01", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK" ,"MAX_LENGTH_CHECK")); 791 455 $objErr->doFunc(array("住所2", "addr02", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK" ,"MAX_LENGTH_CHECK")); 792 $objErr->doFunc(array('メールアドレス', "email", MTEXT_LEN) ,array("NO_SPTAB", "EXIST_CHECK", "EMAIL_CHECK", "SPTAB_CHECK" ,"EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK")); 793 $objErr->doFunc(array('メールアドレス(確認)', "email02", MTEXT_LEN) ,array("NO_SPTAB", "EXIST_CHECK", "EMAIL_CHECK","SPTAB_CHECK" , "EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK")); 794 $objErr->doFunc(array('メールアドレス', 'メールアドレス(確認)', "email", "email02") ,array("EQUAL_CHECK")); 456 $objErr->doFunc(array("お電話番号1", 'tel01'), array("EXIST_CHECK","SPTAB_CHECK" )); 457 $objErr->doFunc(array("お電話番号2", 'tel02'), array("EXIST_CHECK","SPTAB_CHECK" )); 458 $objErr->doFunc(array("お電話番号3", 'tel03'), array("EXIST_CHECK","SPTAB_CHECK" )); 459 $objErr->doFunc(array("お電話番号", "tel01", "tel02", "tel03") ,array("TEL_CHECK")); 460 $objErr->doFunc(array("性別", "sex") ,array("SELECT_CHECK", "NUM_CHECK")); 461 $objErr->doFunc(array("生年月日", "year", "month", "day"), array("CHECK_BIRTHDAY")); 462 463 if (Net_UserAgent_Mobile::isMobile() === false){ 464 $objErr->doFunc(array('メールアドレス', "email", MTEXT_LEN) ,array("NO_SPTAB", "EXIST_CHECK", "EMAIL_CHECK", "SPTAB_CHECK" ,"EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK")); 465 $objErr->doFunc(array("FAX番号1", 'fax01'), array("SPTAB_CHECK")); 466 $objErr->doFunc(array("FAX番号2", 'fax02'), array("SPTAB_CHECK")); 467 $objErr->doFunc(array("FAX番号3", 'fax03'), array("SPTAB_CHECK")); 468 $objErr->doFunc(array("FAX番号", "fax01", "fax02", "fax03") ,array("TEL_CHECK")); 469 $objErr->doFunc(array("メールマガジン", "mailmaga_flg") ,array("SELECT_CHECK", "NUM_CHECK")); 470 $objErr->doFunc(array("メールマガジン", 'mailmaga_flg'), array("SELECT_CHECK")); 471 $objErr->doFunc(array("パスワード(確認)", 'password02', PASSWORD_LEN1, PASSWORD_LEN2), array("EXIST_CHECK", "SPTAB_CHECK" ,"ALNUM_CHECK", "NUM_RANGE_CHECK")); 472 $objErr->doFunc(array('パスワード', 'パスワード(確認)', "password", "password02") ,array("EQUAL_CHECK")); 473 $objErr->doFunc(array('メールアドレス(確認)', "email02", MTEXT_LEN) ,array("NO_SPTAB", "EXIST_CHECK", "EMAIL_CHECK","SPTAB_CHECK" , "EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK")); 474 $objErr->doFunc(array('メールアドレス', 'メールアドレス(確認)', "email", "email02") ,array("EQUAL_CHECK")); 475 } 795 476 796 477 // 現会員の判定 → 現会員もしくは仮登録中は、メアド一意が前提になってるので同じメアドで登録不可 … … 819 500 } 820 501 } 821 822 $objErr->doFunc(array("お電話番号1", 'tel01'), array("EXIST_CHECK","SPTAB_CHECK" ));823 $objErr->doFunc(array("お電話番号2", 'tel02'), array("EXIST_CHECK","SPTAB_CHECK" ));824 $objErr->doFunc(array("お電話番号3", 'tel03'), array("EXIST_CHECK","SPTAB_CHECK" ));825 $objErr->doFunc(array("お電話番号", "tel01", "tel02", "tel03") ,array("TEL_CHECK"));826 $objErr->doFunc(array("FAX番号1", 'fax01'), array("SPTAB_CHECK"));827 $objErr->doFunc(array("FAX番号2", 'fax02'), array("SPTAB_CHECK"));828 $objErr->doFunc(array("FAX番号3", 'fax03'), array("SPTAB_CHECK"));829 $objErr->doFunc(array("FAX番号", "fax01", "fax02", "fax03") ,array("TEL_CHECK"));830 $objErr->doFunc(array("ご性別", "sex") ,array("SELECT_CHECK", "NUM_CHECK"));831 $objErr->doFunc(array("パスワード", 'password', PASSWORD_LEN1, PASSWORD_LEN2), array("EXIST_CHECK", "SPTAB_CHECK" ,"ALNUM_CHECK", "NUM_RANGE_CHECK"));832 $objErr->doFunc(array("パスワード(確認)", 'password02', PASSWORD_LEN1, PASSWORD_LEN2), array("EXIST_CHECK", "SPTAB_CHECK" ,"ALNUM_CHECK", "NUM_RANGE_CHECK"));833 $objErr->doFunc(array('パスワード', 'パスワード(確認)', "password", "password02") ,array("EQUAL_CHECK"));834 $objErr->doFunc(array("パスワードを忘れたときのヒント 質問", "reminder") ,array("SELECT_CHECK", "NUM_CHECK"));835 $objErr->doFunc(array("パスワードを忘れたときのヒント 答え", "reminder_answer", STEXT_LEN) ,array("EXIST_CHECK","SPTAB_CHECK" , "MAX_LENGTH_CHECK"));836 $objErr->doFunc(array("メールマガジン", "mailmaga_flg") ,array("SELECT_CHECK", "NUM_CHECK"));837 838 $objErr->doFunc(array("生年月日", "year", "month", "day"), array("CHECK_BIRTHDAY"));839 $objErr->doFunc(array("メールマガジン", 'mailmaga_flg'), array("SELECT_CHECK"));840 502 return $objErr->arrErr; 841 503 } … … 851 513 return $ret; 852 514 } 853 854 // }}} 855 // {{{ mobile functions 856 857 //---- 入力エラーチェック 858 function lfErrorCheck1($array) { 859 860 $objErr = new SC_CheckError($array); 861 $objDb = new SC_Helper_DB_Ex(); 862 863 $objErr->doFunc(array("お名前(姓)", 'name01', STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK")); 864 $objErr->doFunc(array("お名前(名)", 'name02', STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" , "MAX_LENGTH_CHECK")); 865 $objErr->doFunc(array("お名前(フリガナ・姓)", 'kana01', STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK", "KANA_CHECK")); 866 $objErr->doFunc(array("お名前(フリガナ・名)", 'kana02', STEXT_LEN), array("EXIST_CHECK", "NO_SPTAB", "SPTAB_CHECK" ,"MAX_LENGTH_CHECK", "KANA_CHECK")); 867 $objErr->doFunc(array('メールアドレス', "email", MTEXT_LEN) ,array("NO_SPTAB", "EXIST_CHECK", "EMAIL_CHECK", "SPTAB_CHECK" ,"EMAIL_CHAR_CHECK", "MAX_LENGTH_CHECK", "MOBILE_EMAIL_CHECK")); 868 869 // 現会員の判定 → 現会員もしくは仮登録中は、メアド一意が前提になってるので同じメアドで登録不可 870 if (strlen($array["email"]) > 0) { 871 $array['email'] = strtolower($array['email']); 872 $objQuery = new SC_Query(); 873 $arrRet = $objQuery->select("email, update_date, del_flg", "dtb_customer","email = ? OR email_mobile = ? ORDER BY del_flg", array($array["email"], $array["email"])); 874 875 if(count($arrRet) > 0) { 876 if($arrRet[0]['del_flg'] != '1') { 877 // 会員である場合 878 $objErr->arrErr["email"] .= "※ すでに会員登録で使用されているメールアドレスです。<br />"; 879 } else { 880 // 退会した会員である場合 881 $leave_time = SC_Utils_Ex::sfDBDatetoTime($arrRet[0]['update_date']); 882 $now_time = time(); 883 $pass_time = $now_time - $leave_time; 884 // 退会から何時間-経過しているか判定する。 885 $limit_time = ENTRY_LIMIT_HOUR * 3600; 886 if($pass_time < $limit_time) { 887 $objErr->arrErr["email"] .= "※ 退会から一定期間の間は、同じメールアドレスを使用することはできません。<br />"; 888 } 889 } 890 } 891 } 892 893 $objErr->doFunc(array("パスワード", 'password', PASSWORD_LEN1, PASSWORD_LEN2), array("EXIST_CHECK", "SPTAB_CHECK" ,"ALNUM_CHECK", "NUM_RANGE_CHECK")); 894 $objErr->doFunc(array("パスワード確認用の質問", "reminder") ,array("SELECT_CHECK", "NUM_CHECK")); 895 $objErr->doFunc(array("パスワード確認用の質問の答え", "reminder_answer", STEXT_LEN) ,array("EXIST_CHECK","SPTAB_CHECK" , "MAX_LENGTH_CHECK")); 896 897 return $objErr->arrErr; 898 } 899 900 //---- 入力エラーチェック 901 function lfErrorCheck2($array) { 902 $objErr = new SC_CheckError($array); 903 904 $objErr->doFunc(array("郵便番号1", "zip01", ZIP01_LEN ) ,array("EXIST_CHECK", "SPTAB_CHECK" ,"NUM_CHECK", "NUM_COUNT_CHECK")); 905 $objErr->doFunc(array("郵便番号2", "zip02", ZIP02_LEN ) ,array("EXIST_CHECK", "SPTAB_CHECK" ,"NUM_CHECK", "NUM_COUNT_CHECK")); 906 $objErr->doFunc(array("郵便番号", "zip01", "zip02"), array("ALL_EXIST_CHECK")); 907 908 $objErr->doFunc(array("性別", "sex") ,array("SELECT_CHECK", "NUM_CHECK")); 909 $objErr->doFunc(array("生年月日", "year", "month", "day"), array("CHECK_BIRTHDAY")); 910 911 return $objErr->arrErr; 912 } 913 914 //---- 入力エラーチェック 915 function lfErrorCheck3($array) { 916 $objErr = new SC_CheckError($array); 917 918 $objErr->doFunc(array("都道府県", 'pref'), array("SELECT_CHECK","NUM_CHECK")); 919 $objErr->doFunc(array('住所1', "addr01", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK" ,"MAX_LENGTH_CHECK")); 920 $objErr->doFunc(array('住所2', "addr02", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK" ,"MAX_LENGTH_CHECK")); 921 $objErr->doFunc(array("電話番号1", 'tel01'), array("EXIST_CHECK","SPTAB_CHECK" )); 922 $objErr->doFunc(array("電話番号2", 'tel02'), array("EXIST_CHECK","SPTAB_CHECK" )); 923 $objErr->doFunc(array("電話番号3", 'tel03'), array("EXIST_CHECK","SPTAB_CHECK" )); 924 $objErr->doFunc(array("電話番号", "tel01", "tel02", "tel03") ,array("TEL_CHECK")); 925 926 return $objErr->arrErr; 515 516 function lfCheckReferer(){ 517 /** 518 * 規約ページからの遷移でなければエラー画面へ遷移する 519 */ 520 if (Net_UserAgent_Mobile::isMobile() === FALSE 521 && empty($_POST) 522 && !preg_match('/kiyaku.php/', basename($_SERVER['HTTP_REFERER'])) 523 ) { 524 SC_Utils_Ex::sfDispSiteError(PAGE_ERROR, "", true); 525 } 927 526 } 928 527 -
branches/version-2_5-dev/data/class/pages/entry/LC_Page_Entry_Complete.php
r19805 r19830 82 82 83 83 /** 84 * モバイルページを初期化する.85 *86 * @return void87 */88 function mobileInit() {89 $this->init();90 }91 92 /**93 * Page のプロセス(モバイル).94 *95 * @return void96 */97 function mobileProcess() {98 $this->mobileAction();99 $this->sendResponse();100 }101 102 /**103 * Page のアクション(モバイル).104 *105 * @return void106 */107 function mobileAction() {108 // do nothing...109 }110 111 /**112 84 * デストラクタ. 113 85 * -
branches/version-2_5-dev/data/class/pages/entry/LC_Page_Entry_Kiyaku.php
r19805 r19830 63 63 */ 64 64 function action() { 65 $objCustomer = new SC_Customer();66 65 67 66 // 規約内容の取得 … … 69 68 $objQuery->setOrder("rank DESC"); 70 69 $arrRet = $objQuery->select("kiyaku_title, kiyaku_text", "dtb_kiyaku", "del_flg <> 1"); 71 72 $max = count($arrRet); 73 $this->tpl_kiyaku_text = ""; 74 for ($i = 0; $i < $max; $i++) { 75 $this->tpl_kiyaku_text.=$arrRet[$i]['kiyaku_title'] . "\n\n"; 76 $this->tpl_kiyaku_text.=$arrRet[$i]['kiyaku_text'] . "\n\n"; 77 } 78 } 79 80 /** 81 * モバイルページを初期化する. 82 * 83 * @return void 84 */ 85 function mobileInit() { 86 $this->init(); 87 } 88 89 /** 90 * Page のプロセス(モバイル). 91 * 92 * @return void 93 */ 94 function mobileProcess() { 95 $this->mobilAection(); 96 $this->sendResponse(); 97 } 98 99 /** 100 * Page のアクション(モバイル). 101 * 102 * @return void 103 */ 104 function mobileAction() { 105 $objCustomer = new SC_Customer(); 106 107 $offset = isset($_REQUEST['offset']) ? $_REQUEST['offset'] : 0; 108 $next = $offset; 109 110 // 規約内容の取得 111 $objQuery = new SC_Query(); 112 $count = $objQuery->count("dtb_kiyaku", "del_flg <> 1"); 113 $objQuery->setOrder("rank DESC"); 114 $objQuery->setLimitOffset(1, $offset); 115 $arrRet = $objQuery->select("kiyaku_title, kiyaku_text", "dtb_kiyaku", "del_flg <> 1"); 116 117 if($count > $offset + 1){ 118 $next++; 119 } else { 120 $next = -1; 70 $this->max = count($arrRet); 71 72 // mobile時はGETでページ指定 73 if ( Net_UserAgent_Mobile::isMobile() === true ){ 74 $this->offset = is_numeric($_GET['offset'])===true ? $offset = intval($_GET['offset']) : 1; 121 75 } 122 76 123 $max = count($arrRet);77 // 規約文の作成 124 78 $this->tpl_kiyaku_text = ""; 125 for ($i = 0; $i < $max; $i++) { 79 for ($i = 0; $i < $this->max; $i++) { 80 if ($this->offset !== null && ($this->offset - 1) <> $i) continue; 126 81 $this->tpl_kiyaku_text.=$arrRet[$i]['kiyaku_title'] . "\n\n"; 127 82 $this->tpl_kiyaku_text.=$arrRet[$i]['kiyaku_text'] . "\n\n"; -
branches/version-2_5-dev/data/class/session/SC_SessionFactory.php
r19805 r19830 74 74 case 'useCookie': 75 75 // モバイルの場合はSC_SessionFactory_UseRequestを使用する 76 if ( defined('MOBILE_SITE')) {76 if (Net_UserAgent_Mobile::isMobile()===true) { 77 77 $session = new SC_SessionFactory_UseRequest; 78 78 $session->setState('mobile');
Note: See TracChangeset
for help on using the changeset viewer.