Ignore:
Timestamp:
2007/07/20 15:58:59 (17 years ago)
Author:
nanasess
Message:

r15064 から svn cp
とりあえず暫定コミット.

  • UTF-8 に変更
  • slib.php, glib.php のクラス化
  • LC_Page の抽象化(一部)
Location:
branches/feature-module-update
Files:
7 edited
2 copied

Legend:

Unmodified
Added
Removed
  • branches/feature-module-update

    • Property svn:ignore set to
      .cache

      .settings

      .projectOptions
  • branches/feature-module-update/html/mobile/shopping/complete.php

    r14898 r15078  
    1313        $this->tpl_mainpage = 'shopping/complete.tpl'; 
    1414        $this->tpl_css = '/css/layout/shopping/complete.css'; 
    15         $this->tpl_title = "¤´Ãíʸ´°Î»"; 
     15        $this->tpl_title = "ご注文完了"; 
    1616        global $arrCONVENIENCE; 
    1717        $this->arrCONVENIENCE = $arrCONVENIENCE; 
     
    2323        $objPage->arrCONVENIMESSAGE = $arrCONVENIMESSAGE; 
    2424        /* 
    25          session_start»þ¤Îno-cache¥Ø¥Ã¥À¡¼¤òÍÞÀ©¤¹¤ë¤³¤È¤Ç 
    26          ¡ÖÌá¤ë¡×¥Ü¥¿¥ó»ÈÍÑ»þ¤ÎÍ­¸ú´ü¸ÂÀÚ¤ìɽ¼¨¤òÍÞÀ©¤¹¤ë¡£ 
    27          private-no-expire:¥¯¥é¥¤¥¢¥ó¥È¤Î¥­¥ã¥Ã¥·¥å¤òµö²Ä¤¹¤ë¡£ 
     25         session_start時のno-cacheヘッダーを抑制することで 
     26         「戻る」ボタン使用時の有効期限切れ表示を抑制する。 
     27         private-no-expire:クライアントのキャッシュを許可する。 
    2828        */ 
    2929        session_cache_limiter('private-no-expire');      
     
    4141$objCustomer = new SC_Customer(); 
    4242 
    43 // Á°¤Î¥Ú¡¼¥¸¤ÇÀµ¤·¤¯ÅÐÏ¿¼ê³¤­¤¬¹Ô¤ï¤ì¤¿¤«È½Äê 
     43// 前のページで正しく登録手続きが行われたか判定 
    4444sfIsPrePage($objSiteSess, true); 
    45 // ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ¤È¹ØÆþ¾õÂÖ¤ÎÀµÅöÀ­¤ò¥Á¥§¥Ã¥¯ 
     45// ユーザユニークIDの取得と購入状態の正当性をチェック 
    4646$uniqid = sfCheckNormalAccess($objSiteSess, $objCartSess); 
    4747if ($uniqid != "") { 
    4848     
    49     // ´°Î»½èÍý 
     49    // 完了処理 
    5050    $objQuery = new SC_Query(); 
    5151    $objQuery->begin(); 
     
    5353    $objQuery->commit(); 
    5454     
    55     // ¥»¥Ã¥·¥ç¥ó¤ËÊݴɤµ¤ì¤Æ¤¤¤ë¾ðÊó¤ò¹¹¿·¤¹¤ë 
     55    // セッションに保管されている情報を更新する 
    5656    $objCustomer->updateSession(); 
    5757 
    58     // ´°Î»¥á¡¼¥ëÁ÷¿® 
     58    // 完了メール送信 
    5959    if($order_id != "") { 
    6060        sfSendOrderMail($order_id, '1'); 
    6161    } 
    6262 
    63     //¤½¤Î¾¾ðÊó¤Î¼èÆÀ 
     63    //その他情報の取得 
    6464    $other_data = $objQuery->get("dtb_order", "memo02", "order_id = ? ", array($order_id)); 
    6565    if($other_data != "") { 
    6666        $arrOther = unserialize($other_data); 
    6767         
    68         // ¥Ç¡¼¥¿¤òÊÔ½¸ 
     68        // データを編集 
    6969        foreach($arrOther as $key => $val){ 
    70             // URL¤Î¾ì¹ç¤Ë¤Ï¥ê¥ó¥¯¤Ä¤­¤Çɽ¼¨¤µ¤»¤ë 
     70            // URLの場合にはリンクつきで表示させる 
    7171            if (preg_match('/^(https?|ftp)(:\/\/[-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)$/', $val["value"])) { 
    7272                $arrOther[$key]["value"] = "<a href='#' onClick=\"window.open('". $val["value"] . "'); \" >" . $val["value"] ."</a>"; 
     
    7878    } 
    7979     
    80     // ¥¢¥Õ¥£¥ê¥¨¥¤¥ÈÍÑ¥³¥ó¥Ð¡¼¥¸¥ç¥ó¥¿¥°¤ÎÀßÄê 
     80    // アフィリエイト用コンバージョンタグの設定 
    8181    $objPage->tpl_conv_page = AFF_SHOPPING_COMPLETE; 
    8282    $objPage->tpl_aff_option = "order_id=$order_id"; 
    83     //¹ç·×²Á³Ê¤Î¼èÆÀ 
     83    //合計価格の取得 
    8484    $total = $objQuery->get("dtb_order", "total", "order_id = ? ", array($order_id)); 
    8585    if($total != "") { 
     
    9393$objView->display(SITE_FRAME); 
    9494//-------------------------------------------------------------------------------------------------------------------------- 
    95 // ¥¨¥Ó¥¹¥¿¥°°úÅϤ·Íѥǡ¼¥¿¤òÀ¸À®¤¹¤ë 
     95// エビスタグ引渡し用データを生成する 
    9696function lfGetEbisData($order_id) { 
    9797    $objQuery = new SC_Query(); 
     
    100100     
    101101    if($arrRet[0]['customer_id'] > 0) { 
    102         // ²ñ°÷ÈÖ¹æ 
     102        // 会員番号 
    103103        $arrEbis['m1id'] = $arrRet[0]['customer_id']; 
    104         // Èó²ñ°÷or²ñ°÷ 
     104        // 非会員or会員 
    105105        $arrEbis['o5id'] = '1'; 
    106106    } else { 
    107         // ²ñ°÷ÈÖ¹æ 
     107        // 会員番号 
    108108        $arrEbis['m1id'] = ''; 
    109         // Èó²ñ°÷or²ñ°÷ 
     109        // 非会員or会員 
    110110        $arrEbis['o5id'] = '2';  
    111111    } 
    112112     
    113     // ¹ØÆþ¶â³Û 
     113    // 購入金額 
    114114    $arrEbis['a1id'] = $arrRet[0]['total']; 
    115     // À­ÊÌ 
     115    // 性別 
    116116    $arrEbis['o2id'] = $arrRet[0]['order_sex']; 
    117     // ǯÎð 
     117    // 年齢 
    118118    $arrEbis['o3id'] = $arrRet[0]['order_age']; 
    119     // ¿¦¶È 
     119    // 職業 
    120120    $arrEbis['o4id'] = $arrRet[0]['order_job']; 
    121121         
     
    125125     
    126126    $line = ""; 
    127     // ¾¦ÉÊID¤ò¥¢¥ó¥À¡¼¥Ð¡¼¤ÇÀܳ¤¹¤ë¡£ 
     127    // 商品IDをアンダーバーで接続する。 
    128128    foreach($arrProducts['product_id'] as $val) { 
    129129        if($line != "") { 
     
    134134    } 
    135135     
    136     // ¾¦ÉÊID    
     136    // 商品ID  
    137137    $arrEbis['o1id'] = $line; 
    138138     
     
    140140} 
    141141 
    142 // ´°Î»½èÍý 
     142// 完了処理 
    143143function lfDoComplete($objQuery, $uniqid) { 
    144144    global $objCartSess; 
     
    147147    global $arrInfo; 
    148148     
    149     // °ì»þ¼õÃí¥Æ¡¼¥Ö¥ë¤ÎÆɹþ 
     149    // 一時受注テーブルの読込 
    150150    $arrData = sfGetOrderTemp($uniqid); 
    151151     
    152     // ²ñ°÷¾ðÊóÅÐÏ¿½èÍý 
     152    // 会員情報登録処理 
    153153    if ($objCustomer->isLoginSuccess()) { 
    154         // ¿·¤ªÆϤ±Àè¤ÎÅÐÏ¿ 
     154        // 新お届け先の登録 
    155155        lfSetNewAddr($uniqid, $objCustomer->getValue('customer_id')); 
    156         // ¹ØÆþ½¸·×¤ò¸ÜµÒ¥Æ¡¼¥Ö¥ë¤ËÈ¿±Ç 
     156        // 購入集計を顧客テーブルに反映 
    157157        lfSetCustomerPurchase($objCustomer->getValue('customer_id'), $arrData, $objQuery); 
    158158    } else { 
    159         //¹ØÆþ»þ¶¯À©²ñ°÷ÅÐÏ¿ 
     159        //購入時強制会員登録 
    160160        switch(PURCHASE_CUSTOMER_REGIST) { 
    161         //̵¸ú 
     161        //無効 
    162162        case '0': 
    163             // ¹ØÆþ»þ²ñ°÷ÅÐÏ¿ 
     163            // 購入時会員登録 
    164164            if($arrData['member_check'] == '1') { 
    165                 // ²¾²ñ°÷ÅÐÏ¿ 
     165                // 仮会員登録 
    166166                $customer_id = lfRegistPreCustomer($arrData, $arrInfo); 
    167                 // ¹ØÆþ½¸·×¤ò¸ÜµÒ¥Æ¡¼¥Ö¥ë¤ËÈ¿±Ç 
     167                // 購入集計を顧客テーブルに反映 
    168168                lfSetCustomerPurchase($customer_id, $arrData, $objQuery); 
    169169            } 
    170170            break; 
    171         //Í­¸ú 
     171        //有効 
    172172        case '1': 
    173             // ²¾²ñ°÷ÅÐÏ¿ 
     173            // 仮会員登録 
    174174            $customer_id = lfRegistPreCustomer($arrData, $arrInfo); 
    175             // ¹ØÆþ½¸·×¤ò¸ÜµÒ¥Æ¡¼¥Ö¥ë¤ËÈ¿±Ç 
     175            // 購入集計を顧客テーブルに反映 
    176176            lfSetCustomerPurchase($customer_id, $arrData, $objQuery); 
    177177            break; 
     
    179179         
    180180    } 
    181     // °ì»þ¥Æ¡¼¥Ö¥ë¤ò¼õÃí¥Æ¡¼¥Ö¥ë¤Ë³ÊǼ¤¹¤ë 
     181    // 一時テーブルを受注テーブルに格納する 
    182182    $order_id = lfRegistOrder($objQuery, $arrData); 
    183     // ¥«¡¼¥È¾¦Éʤò¼õÃí¾ÜºÙ¥Æ¡¼¥Ö¥ë¤Ë³ÊǼ¤¹¤ë 
     183    // カート商品を受注詳細テーブルに格納する 
    184184    lfRegistOrderDetail($objQuery, $order_id, $objCartSess); 
    185     // ¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤Î¾ðÊó¤òºï½ü¤¹¤ë¡£ 
     185    // 受注一時テーブルの情報を削除する。 
    186186    lfDeleteTempOrder($objQuery, $uniqid); 
    187187     
    188     // ¥»¥Ã¥·¥ç¥ó¥«¡¼¥ÈÆâ¤Î¾¦Éʤòºï½ü¤¹¤ë¡£ 
     188    // セッションカート内の商品を削除する。 
    189189    $objCartSess->delAllProducts(); 
    190     // Ãíʸ°ì»þID¤ò²ò½ü¤¹¤ë¡£ 
     190    // 注文一時IDを解除する。 
    191191    $objSiteSess->unsetUniqId(); 
    192192     
     
    194194} 
    195195 
    196 // ²ñ°÷ÅÐÏ¿¡Ê²¾ÅÐÏ¿¡Ë 
     196// 会員登録(仮登録) 
    197197function lfRegistPreCustomer($arrData, $arrInfo) { 
    198     // ¹ØÆþ»þ¤Î²ñ°÷ÅÐÏ¿ 
     198    // 購入時の会員登録 
    199199    $sqlval['name01'] = $arrData['order_name01']; 
    200200    $sqlval['name02'] = $arrData['order_name02']; 
     
    218218    $sqlval['reminder_answer'] = $arrData['reminder_answer']; 
    219219 
    220     // ¥á¥ë¥Þ¥¬ÇÛ¿®Íѥե饰¤ÎȽÄê 
     220    // メルマガ配信用フラグの判定 
    221221    switch($arrData['mail_flag']) { 
    222     case '1':   // HTML¥á¡¼¥ë 
     222    case '1':   // HTMLメール 
    223223        $mail_flag = 4; 
    224224        break; 
    225     case '2':   // TEXT¥á¡¼¥ë 
     225    case '2':   // TEXTメール 
    226226        $mail_flag = 5; 
    227227        break; 
    228     case '3':   // ´õ˾¤Ê¤· 
     228    case '3':   // 希望なし 
    229229        $mail_flag = 6; 
    230230        break; 
     
    235235    $sqlval['mailmaga_flg'] = $mail_flag; 
    236236         
    237     // ²ñ°÷²¾ÅÐÏ¿ 
     237    // 会員仮登録 
    238238    $sqlval['status'] = 1; 
    239     // URLȽÄêÍÑ¥­¡¼ 
     239    // URL判定用キー 
    240240    $sqlval['secret_key'] = sfGetUniqRandomId("t");  
    241241     
     
    245245    $objQuery->insert("dtb_customer", $sqlval); 
    246246     
    247     // ¸ÜµÒID¤Î¼èÆÀ 
     247    // 顧客IDの取得 
    248248    $arrRet = $objQuery->select("customer_id", "dtb_customer", "secret_key = ?", array($sqlval['secret_key'])); 
    249249    $customer_id = $arrRet[0]['customer_id']; 
    250250 
    251     //¡¡²¾ÅÐÏ¿´°Î»¥á¡¼¥ëÁ÷¿® 
     251    // 仮登録完了メール送信 
    252252    $objMailPage = new LC_Page(); 
    253253    $objMailPage->to_name01 = $arrData['order_name01']; 
     
    261261    $objMail = new GC_SendMail(); 
    262262    $objMail->setItem( 
    263                         ''                                      //¡¡°¸Àè 
    264                         , sfMakeSubject("²ñ°÷ÅÐÏ¿¤Î¤´³Îǧ")     //¡¡¥µ¥Ö¥¸¥§¥¯¥È 
    265                         , $body                                 //¡¡ËÜʸ 
    266                         , $arrInfo['email03']                   //¡¡ÇÛÁ÷¸µ¥¢¥É¥ì¥¹ 
    267                         , $arrInfo['shop_name']                 //¡¡ÇÛÁ÷¸µ¡¡Ì¾Á° 
    268                         , $arrInfo["email03"]                   //¡¡reply_to 
    269                         , $arrInfo["email04"]                   //¡¡return_path 
     263                        ''                                      // 宛先 
     264                        , sfMakeSubject("会員登録のご確認")     // サブジェクト 
     265                        , $body                                 // 本文 
     266                        , $arrInfo['email03']                   // 配送元アドレス 
     267                        , $arrInfo['shop_name']                 // 配送元 名前 
     268                        , $arrInfo["email03"]                   // reply_to 
     269                        , $arrInfo["email04"]                   // return_path 
    270270                        , $arrInfo["email04"]                   //  Errors_to 
    271271                        , $arrInfo["email01"]                   //  Bcc 
    272272                                                        ); 
    273     // °¸Àè¤ÎÀßÄê 
    274     $name = $arrData['order_name01'] . $arrData['order_name02'] ." ÍÍ"; 
     273    // 宛先の設定 
     274    $name = $arrData['order_name01'] . $arrData['order_name02'] ." "; 
    275275    $objMail->setTo($arrData['order_email'], $name);             
    276276    $objMail->sendMail(); 
     
    279279} 
    280280 
    281 // ¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤Î¤ªÆϤ±Àè¤ò¥³¥Ô¡¼¤¹¤ë 
     281// 受注一時テーブルのお届け先をコピーする 
    282282function lfCopyDeliv($uniqid, $arrData) { 
    283283    $objQuery = new SC_Query(); 
    284284     
    285     // Ê̤ΤªÆϤ±Àè¤ò»ØÄꤷ¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢ÇÛÁ÷Àè¤ËÅÐÏ¿½»½ê¤ò¥³¥Ô¡¼¤¹¤ë¡£ 
     285    // 別のお届け先を指定していない場合、配送先に登録住所をコピーする。 
    286286    if($arrData["deliv_check"] != "1") { 
    287287        $sqlval['deliv_name01'] = $arrData['order_name01']; 
     
    302302} 
    303303 
    304 // ¼õÃí¥Æ¡¼¥Ö¥ë¤ØÅÐÏ¿ 
     304// 受注テーブルへ登録 
    305305function lfRegistOrder($objQuery, $arrData) { 
    306306    $sqlval = $arrData; 
    307307 
    308     // ¼õÃí¥Æ¡¼¥Ö¥ë¤Ë½ñ¤­¹þ¤Þ¤Ê¤¤Îó¤ò½üµî 
    309     unset($sqlval['mail_flag']);        // ¥á¥ë¥Þ¥¬¥Á¥§¥Ã¥¯ 
    310     unset($sqlval['deliv_check']);      // Ê̤ΤªÆϤ±Àè¥Á¥§¥Ã¥¯ 
    311     unset($sqlval['point_check']);      // ¥Ý¥¤¥ó¥ÈÍøÍÑ¥Á¥§¥Ã¥¯ 
    312     unset($sqlval['member_check']);     // ¹ØÆþ»þ²ñ°÷¥Á¥§¥Ã¥¯ 
    313     unset($sqlval['password']);         // ¥í¥°¥¤¥ó¥Ñ¥¹¥ï¡¼¥É 
    314     unset($sqlval['reminder']);         // ¥ê¥Þ¥¤¥ó¥À¡¼¼ÁÌä 
    315     unset($sqlval['reminder_answer']);  // ¥ê¥Þ¥¤¥ó¥À¡¼Åú¤¨ 
    316     unset($sqlval['session']);          // ¥»¥Ã¥·¥ç¥ó 
    317  
    318     // Ãíʸ¥¹¥Æ¡¼¥¿¥¹:»ØÄ̵꤬¤±¤ì¤Ð¿·µ¬¼õÉÕ¤ËÀßÄê 
     308    // 受注テーブルに書き込まない列を除去 
     309    unset($sqlval['mail_flag']);        // メルマガチェック 
     310    unset($sqlval['deliv_check']);      // 別のお届け先チェック 
     311    unset($sqlval['point_check']);      // ポイント利用チェック 
     312    unset($sqlval['member_check']);     // 購入時会員チェック 
     313    unset($sqlval['password']);         // ログインパスワード 
     314    unset($sqlval['reminder']);         // リマインダー質問 
     315    unset($sqlval['reminder_answer']);  // リマインダー答え 
     316    unset($sqlval['session']);          // セッション 
     317 
     318    // 注文ステータス:指定が無ければ新規受付に設定 
    319319    if($sqlval["status"] == ""){ 
    320320        $sqlval['status'] = '1';             
    321321    } 
    322322     
    323     // Ê̤ΤªÆϤ±Àè¤ò»ØÄꤷ¤Æ¤¤¤Ê¤¤¾ì¹ç¡¢ÇÛÁ÷Àè¤ËÅÐÏ¿½»½ê¤ò¥³¥Ô¡¼¤¹¤ë¡£ 
     323    // 別のお届け先を指定していない場合、配送先に登録住所をコピーする。 
    324324    if($arrData["deliv_check"] != "1") { 
    325325        $sqlval['deliv_name01'] = $arrData['order_name01']; 
     
    337337    } 
    338338     
    339     $order_id = $arrData['order_id'];       // ¥ª¡¼¥À¡¼ID 
    340     $sqlval['create_date'] = 'now()';       // ¼õÃíÆü 
    341      
    342     // ¥²¥Ã¥È¤ÎÃͤò¥¤¥ó¥µ¡¼¥È 
     339    $order_id = $arrData['order_id'];       // オーダーID 
     340    $sqlval['create_date'] = 'now()';       // 受注日 
     341     
     342    // ゲットの値をインサート 
    343343    //$sqlval = lfGetInsParam($sqlval); 
    344344     
    345     // INSERT¤Î¼Â¹Ô 
     345    // INSERTの実行 
    346346    $objQuery->insert("dtb_order", $sqlval); 
    347347 
     
    349349} 
    350350 
    351 // ¼õÃí¾ÜºÙ¥Æ¡¼¥Ö¥ë¤ØÅÐÏ¿ 
     351// 受注詳細テーブルへ登録 
    352352function lfRegistOrderDetail($objQuery, $order_id, $objCartSess) { 
    353     // ¥«¡¼¥ÈÆâ¾ðÊó¤Î¼èÆÀ 
     353    // カート内情報の取得 
    354354    $arrCart = $objCartSess->getCartList(); 
    355355    $max = count($arrCart); 
    356356     
    357     // ´û¤Ë¸ºß¤¹¤ë¾ÜºÙ¥ì¥³¡¼¥É¤ò¾Ã¤·¤Æ¤ª¤¯¡£ 
     357    // 既に存在する詳細レコードを消しておく。 
    358358    $objQuery->delete("dtb_order_detail", "order_id = $order_id"); 
    359359 
    360     // µ¬³Ê̾°ìÍ÷ 
     360    // 規格名一覧 
    361361    $arrClassName = sfGetIDValueList("dtb_class", "class_id", "name"); 
    362     // µ¬³ÊʬÎà̾°ìÍ÷ 
     362    // 規格分類名一覧 
    363363    $arrClassCatName = sfGetIDValueList("dtb_classcategory", "classcategory_id", "name"); 
    364364             
    365365    for ($i = 0; $i < $max; $i++) { 
    366         // ¾¦Éʵ¬³Ê¾ðÊó¤Î¼èÆÀ    
     366        // 商品規格情報の取得     
    367367        $arrData = sfGetProductsClass($arrCart[$i]['id']); 
    368368         
    369         // ¸ºß¤¹¤ë¾¦ÉʤΤßɽ¼¨¤¹¤ë¡£ 
     369        // 存在する商品のみ表示する。 
    370370        if($arrData != "") { 
    371371            $sqlval['order_id'] = $order_id; 
     
    381381            $sqlval['quantity'] = $arrCart[$i]['quantity']; 
    382382            lfReduceStock($objQuery, $arrCart[$i]['id'], $arrCart[$i]['quantity']); 
    383             // INSERT¤Î¼Â¹Ô 
     383            // INSERTの実行 
    384384            $objQuery->insert("dtb_order_detail", $sqlval); 
    385385        } else { 
     
    389389} 
    390390 
    391 /* ¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤Îºï½ü */ 
     391/* 受注一時テーブルの削除 */ 
    392392function lfDeleteTempOrder($objQuery, $uniqid) { 
    393393    $where = "order_temp_id = ?"; 
     
    397397} 
    398398 
    399 // ¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤Î½»½ê¤¬ÅÐÏ¿ºÑ¤ß¥Æ¡¼¥Ö¥ë¤È°Û¤Ê¤ë¾ì¹ç¤Ï¡¢Ê̤ΤªÆϤ±Àè¤ËÄɲ乤ë 
     399// 受注一時テーブルの住所が登録済みテーブルと異なる場合は、別のお届け先に追加する 
    400400function lfSetNewAddr($uniqid, $customer_id) { 
    401401    $objQuery = new SC_Query(); 
     
    407407    $arrRet = $objQuery->select($col, "dtb_order_temp", $where, array($uniqid)); 
    408408     
    409     // Í×ÁÇ̾¤Îdeliv_¤òºï½ü¤¹¤ë¡£ 
     409    // 要素名のdeliv_を削除する。 
    410410    foreach($arrRet[0] as $key => $val) { 
    411411        $keyname = ereg_replace("^deliv_", "", $key); 
     
    413413    } 
    414414     
    415     // ²ñ°÷¾ðÊó¥Æ¡¼¥Ö¥ë¤È¤ÎÈæ³Ó 
     415    // 会員情報テーブルとの比較 
    416416    $col = "name01,name02,kana01,kana02,tel01,tel02,tel03,zip01,zip02,pref,addr01,addr02"; 
    417417    $where = "customer_id = ?"; 
    418418    $arrCustomerAddr = $objQuery->select($col, "dtb_customer", $where, array($customer_id)); 
    419419     
    420     // ²ñ°÷¾ðÊó¤Î½»½ê¤È°Û¤Ê¤ë¾ì¹ç 
     420    // 会員情報の住所と異なる場合 
    421421    if($arrNew != $arrCustomerAddr[0]) { 
    422         // Ê̤ΤªÆϤ±Àè¥Æ¡¼¥Ö¥ë¤Î½»½ê¤ÈÈæ³Ó¤¹¤ë 
     422        // 別のお届け先テーブルの住所と比較する 
    423423        $col = "name01,name02,kana01,kana02,tel01,tel02,tel03,zip01,zip02,pref,addr01,addr02"; 
    424424        $where = "customer_id = ?"; 
     
    427427        foreach($arrOtherAddr as $arrval) { 
    428428            if($arrNew == $arrval) { 
    429                 // ¤¹¤Ç¤ËƱ¤¸½»½ê¤¬ÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë 
     429                // すでに同じ住所が登録されている 
    430430                $find_same = true; 
    431431            } 
     
    437437    } 
    438438     
    439     // ¿·¤·¤¤¤ªÆϤ±À褬ÅÐÏ¿ºÑ¤ß¤Î¤â¤Î¤È°Û¤Ê¤ë¾ì¹ç¤ÏÊ̤ΤªÆϤ±Àè¥Æ¡¼¥Ö¥ë¤ËÅÐÏ¿¤¹¤ë 
     439    // 新しいお届け先が登録済みのものと異なる場合は別のお届け先テーブルに登録する 
    440440    if($diff) { 
    441441        $sqlval = $arrNew; 
     
    445445} 
    446446 
    447 /* ¹ØÆþ¾ðÊó¤ò²ñ°÷¥Æ¡¼¥Ö¥ë¤ËÅÐÏ¿¤¹¤ë */ 
     447/* 購入情報を会員テーブルに登録する */ 
    448448function lfSetCustomerPurchase($customer_id, $arrData, $objQuery) { 
    449449    $col = "first_buy_date, last_buy_date, buy_times, buy_total, point"; 
     
    460460    $sqlval['point'] = ($sqlval['point'] + $arrData['add_point'] - $arrData['use_point']); 
    461461     
    462     // ¥Ý¥¤¥ó¥È¤¬ÉÔ­¤·¤Æ¤¤¤ë¾ì¹ç 
     462    // ポイントが不足している場合 
    463463    if($sqlval['point'] < 0) { 
    464464        $objQuery->rollback(); 
     
    469469} 
    470470 
    471 // ºß¸Ë¤ò¸º¤é¤¹½èÍý 
     471// 在庫を減らす処理 
    472472function lfReduceStock($objQuery, $arrID, $quantity) { 
    473473    $where = "product_id = ? AND classcategory_id1 = ? AND classcategory_id2 = ?"; 
    474474    $arrRet = $objQuery->select("stock, stock_unlimited", "dtb_products_class", $where, $arrID); 
    475475     
    476     // Çä¤êÀڤ쥨¥é¡¼ 
     476    // 売り切れエラー 
    477477    if(($arrRet[0]['stock_unlimited'] != '1' && $arrRet[0]['stock'] < $quantity) || $quantity == 0) { 
    478478        $objQuery->rollback(); 
    479479        sfDispSiteError(SOLD_OUT, "", true); 
    480     // ̵À©¸Â¤Î¾ì¹ç¡¢ºß¸Ë¤ÏNULL 
     480    // 無制限の場合、在庫はNULL 
    481481    } elseif($arrRet[0]['stock_unlimited'] == '1') { 
    482482        $sqlval['stock'] = null; 
    483483        $objQuery->update("dtb_products_class", $sqlval, $where, $arrID); 
    484     // ºß¸Ë¤ò¸º¤é¤¹ 
     484    // 在庫を減らす 
    485485    } else { 
    486486        $sqlval['stock'] = ($arrRet[0]['stock'] - $quantity); 
     
    492492} 
    493493 
    494 // GET¤ÎÃͤò¥¤¥ó¥µ¡¼¥ÈÍѤËÀ°¤¨¤ë 
     494// GETの値をインサート用に整える 
    495495function lfGetInsParam($sqlVal){ 
    496496     
    497497    foreach($_GET as $key => $val){ 
    498         // ¥«¥é¥à¤Î¸ºß¥Á¥§¥Ã¥¯ 
     498        // カラムの存在チェック 
    499499        if(sfColumnExists("dtb_order", $key)) $sqlVal[$key] = $val; 
    500500    } 
  • branches/feature-module-update/html/mobile/shopping/confirm.php

    r14898 r15078  
    1717        $this->tpl_mainpage = 'shopping/confirm.tpl'; 
    1818        $this->tpl_css = '/css/layout/shopping/confirm.css'; 
    19         $this->tpl_title = "¤´ÆþÎÏÆâÍƤΤ´³Îǧ"; 
     19        $this->tpl_title = "ご入力内容のご確認"; 
    2020        global $arrPref; 
    2121        $this->arrPref = $arrPref; 
     
    2727        $this->arrReminder = $arrReminder; 
    2828        /* 
    29          session_start»þ¤Îno-cache¥Ø¥Ã¥À¡¼¤òÍÞÀ©¤¹¤ë¤³¤È¤Ç 
    30          ¡ÖÌá¤ë¡×¥Ü¥¿¥ó»ÈÍÑ»þ¤ÎÍ­¸ú´ü¸ÂÀÚ¤ìɽ¼¨¤òÍÞÀ©¤¹¤ë¡£ 
    31          private-no-expire:¥¯¥é¥¤¥¢¥ó¥È¤Î¥­¥ã¥Ã¥·¥å¤òµö²Ä¤¹¤ë¡£ 
     29         session_start時のno-cacheヘッダーを抑制することで 
     30         「戻る」ボタン使用時の有効期限切れ表示を抑制する。 
     31         private-no-expire:クライアントのキャッシュを許可する。 
    3232        */ 
    3333        session_cache_limiter('private-no-expire');      
     
    4545$objQuery = new SC_Query(); 
    4646 
    47 // Á°¤Î¥Ú¡¼¥¸¤ÇÀµ¤·¤¯ÅÐÏ¿¼ê³¤­¤¬¹Ô¤ï¤ì¤¿µ­Ï¿¤¬¤¢¤ë¤«È½Äê 
     47// 前のページで正しく登録手続きが行われた記録があるか判定 
    4848sfIsPrePage($objSiteSess, true); 
    4949 
    50 // ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ¤È¹ØÆþ¾õÂÖ¤ÎÀµÅöÀ­¤ò¥Á¥§¥Ã¥¯ 
     50// ユーザユニークIDの取得と購入状態の正当性をチェック 
    5151$uniqid = sfCheckNormalAccess($objSiteSess, $objCartSess); 
    5252$objPage->tpl_uniqid = $uniqid; 
    5353 
    54 // ¥«¡¼¥È½¸·×½èÍý 
     54// カート集計処理 
    5555$objPage = sfTotalCart($objPage, $objCartSess, $arrInfo); 
    56 // °ì»þ¼õÃí¥Æ¡¼¥Ö¥ë¤ÎÆɹþ 
     56// 一時受注テーブルの読込 
    5757$arrData = sfGetOrderTemp($uniqid); 
    58 // ¥«¡¼¥È½¸·×¤ò¸µ¤ËºÇ½ª·×»» 
     58// カート集計を元に最終計算 
    5959$arrData = sfTotalConfirm($arrData, $objPage, $objCartSess, $arrInfo, $objCustomer); 
    6060 
    61 // ¥«¡¼ÅÔÆâ¤Î¾¦ÉʤÎÇä¤êÀÚ¤ì¥Á¥§¥Ã¥¯ 
     61// カー都内の商品の売り切れチェック 
    6262$objCartSess->chkSoldOut($objCartSess->getCartList()); 
    6363 
    64 // ²ñ°÷¥í¥°¥¤¥ó¥Á¥§¥Ã¥¯ 
     64// 会員ログインチェック 
    6565if($objCustomer->isLoginSuccess()) { 
    6666    $objPage->tpl_login = '1'; 
     
    6868} 
    6969 
    70 // ·èºÑ¶èʬ¤ò¼èÆÀ¤¹¤ë 
     70// 決済区分を取得する 
    7171$payment_type = ""; 
    7272if(sfColumnExists("dtb_payment", "memo01")){ 
    73     // MEMO03¤ËÃͤ¬Æþ¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¡¢¥â¥¸¥å¡¼¥ëÄɲ䵤줿¤â¤Î¤È¤ß¤Ê¤¹ 
     73    // MEMO03に値が入っている場合には、モジュール追加されたものとみなす 
    7474    $sql = "SELECT memo03 FROM dtb_payment WHERE payment_id = ?"; 
    7575    $arrPayment = $objQuery->getall($sql, array($arrData['payment_id'])); 
     
    8080 
    8181switch($_POST['mode']) { 
    82 // Á°¤Î¥Ú¡¼¥¸¤ËÌá¤ë 
     82// 前のページに戻る 
    8383case 'return': 
    84     // Àµ¾ï¤Ê¿ä°Ü¤Ç¤¢¤ë¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯ 
     84    // 正常な推移であることを記録しておく 
    8585    $objSiteSess->setRegistFlag(); 
    8686    header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_PAYMENT)); 
     
    8888    break; 
    8989case 'confirm': 
    90     // ¤³¤Î»þÅÀ¤Ç¥ª¡¼¥À¡¼ID¤ò³ÎÊݤ·¤Æ¤ª¤¯¡Ê¥¯¥ì¥¸¥Ã¥È¡¢¥³¥ó¥Ó¥Ë·èºÑ¤ÇɬÍפʤ¿¤á¡Ë 
    91     // postgresql¤Èmysql¤È¤Ç½èÍý¤òʬ¤±¤ë 
     90    // この時点でオーダーIDを確保しておく(クレジット、コンビニ決済で必要なため) 
     91    // postgresqlとmysqlとで処理を分ける 
    9292    if (DB_TYPE == "pgsql") { 
    9393        $order_id = $objQuery->nextval("dtb_order","order_id"); 
     
    9797    $arrData["order_id"] = $order_id; 
    9898     
    99     // ¥»¥Ã¥·¥ç¥ó¾ðÊó¤òÊÝ»ý 
     99    // セッション情報を保持 
    100100    $arrData['session'] = serialize($_SESSION); 
    101101     
    102     // ½¸·×·ë²Ì¤ò¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤ËÈ¿±Ç 
     102    // 集計結果を受注一時テーブルに反映 
    103103    sfRegistTempOrder($uniqid, $arrData); 
    104     // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯ 
     104    // 正常に登録されたことを記録しておく 
    105105    $objSiteSess->setRegistFlag(); 
    106106     
    107     // ·èºÑÊýË¡¤Ë¤è¤ê²èÌÌÀÚÂØ 
     107    // 決済方法により画面切替 
    108108    if($payment_type != "") { 
    109109        $_SESSION["payment_id"] = $arrData['payment_id']; 
  • branches/feature-module-update/html/mobile/shopping/deliv.php

    r12157 r15078  
    1919        global $arrPref; 
    2020        $this->arrPref = $arrPref; 
    21         $this->tpl_title = "¤ªÆϤ±Àè»ØÄê";      // ¥¿¥¤¥È¥ë 
     21        $this->tpl_title = "お届け先指定";        // タイトル 
    2222 
    2323        /* 
    24          session_start»þ¤Îno-cache¥Ø¥Ã¥À¡¼¤òÍÞÀ©¤¹¤ë¤³¤È¤Ç 
    25          ¡ÖÌá¤ë¡×¥Ü¥¿¥ó»ÈÍÑ»þ¤ÎÍ­¸ú´ü¸ÂÀÚ¤ìɽ¼¨¤òÍÞÀ©¤¹¤ë¡£ 
    26          private-no-expire:¥¯¥é¥¤¥¢¥ó¥È¤Î¥­¥ã¥Ã¥·¥å¤òµö²Ä¤¹¤ë¡£ 
     24         session_start時のno-cacheヘッダーを抑制することで 
     25         「戻る」ボタン使用時の有効期限切れ表示を抑制する。 
     26         private-no-expire:クライアントのキャッシュを許可する。 
    2727        */ 
    2828        session_cache_limiter('private-no-expire');      
     
    3636$objCartSess = new SC_CartSession(); 
    3737$objCustomer = new SC_Customer(); 
    38 // ¥¯¥Ã¥­¡¼´ÉÍý¥¯¥é¥¹ 
     38// クッキー管理クラス 
    3939$objCookie = new SC_Cookie(COOKIE_EXPIRE); 
    40 // ¥Ñ¥é¥á¡¼¥¿´ÉÍý¥¯¥é¥¹ 
     40// パラメータ管理クラス 
    4141$objFormParam = new SC_FormParam(); 
    42 // ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ 
     42// パラメータ情報の初期化 
    4343lfInitParam(); 
    44 // POSTÃͤμèÆÀ 
     44// POST値の取得 
    4545$objFormParam->setParam($_POST); 
    4646 
    47 $objLoginFormParam = new SC_FormParam();    // ¥í¥°¥¤¥ó¥Õ¥©¡¼¥àÍÑ 
    48 lfInitLoginFormParam();                     // ½é´üÀßÄê 
    49 $objLoginFormParam->setParam($_POST);       // POSTÃͤμèÆÀ 
    50  
    51 // ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ¤È¹ØÆþ¾õÂÖ¤ÎÀµÅöÀ­¤ò¥Á¥§¥Ã¥¯ 
     47$objLoginFormParam = new SC_FormParam();    // ログインフォーム用 
     48lfInitLoginFormParam();                     // 初期設定 
     49$objLoginFormParam->setParam($_POST);       // POST値の取得 
     50 
     51// ユーザユニークIDの取得と購入状態の正当性をチェック 
    5252$uniqid = sfCheckNormalAccess($objSiteSess, $objCartSess); 
    5353$objPage->tpl_uniqid = $uniqid; 
    5454 
    55 // ¥í¥°¥¤¥ó¥Á¥§¥Ã¥¯ 
     55// ログインチェック 
    5656if($_POST['mode'] != 'login' && !$objCustomer->isLoginSuccess()) { 
    57     // ÉÔÀµ¥¢¥¯¥»¥¹¤È¤ß¤Ê¤¹ 
     57    // 不正アクセスとみなす 
    5858    sfDispSiteError(CUSTOMER_ERROR, "", false, "", true); 
    5959} 
     
    6464    $objPage->arrErr = $objLoginFormParam->checkError(); 
    6565    $arrForm =  $objLoginFormParam->getHashArray(); 
    66     // ¥¯¥Ã¥­¡¼ÊݸȽÄê 
     66    // クッキー保存判定 
    6767    if($arrForm['login_memory'] == "1" && $arrForm['login_email'] != "") { 
    6868        $objCookie->setCookie('login_email', $_POST['login_email']); 
     
    7272 
    7373    if(count($objPage->arrErr) == 0) { 
    74         // ¥í¥°¥¤¥óȽÄê 
     74        // ログイン判定 
    7575        if(!$objCustomer->getCustomerDataFromMobilePhoneIdPass($arrForm['login_pass']) && 
    7676           !$objCustomer->getCustomerDataFromEmailPass($arrForm['login_pass'], $arrForm['login_email'], true)) { 
    77             // ²¾ÅÐÏ¿¤ÎȽÄê 
     77            // 仮登録の判定 
    7878            $objQuery = new SC_Query; 
    7979            $where = "email = ? AND status = 1 AND del_flg = 0"; 
     
    8787        }  
    8888    } else { 
    89         // ¥í¥°¥¤¥ó¥Ú¡¼¥¸¤ËÌá¤ë 
     89        // ログインページに戻る 
    9090        header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_TOP)); 
    9191        exit; 
    9292    } 
    9393 
    94     // ¥í¥°¥¤¥ó¤¬À®¸ù¤·¤¿¾ì¹ç¤Ï·ÈÂÓüËöID¤òÊݸ¤¹¤ë¡£ 
     94    // ログインが成功した場合は携帯端末IDを保存する。 
    9595    $objCustomer->updateMobilePhoneId(); 
    9696 
    97     // ·ÈÂӤΥ᡼¥ë¥¢¥É¥ì¥¹¤ò¥³¥Ô¡¼¤¹¤ë¡£ 
     97    // 携帯のメールアドレスをコピーする。 
    9898    $objCustomer->updateEmailMobile(); 
    9999 
    100     // ·ÈÂӤΥ᡼¥ë¥¢¥É¥ì¥¹¤¬ÅÐÏ¿¤µ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç 
     100    // 携帯のメールアドレスが登録されていない場合 
    101101    if (!$objCustomer->hasValue('email_mobile')) { 
    102102        header('Location: ' . gfAddSessionId('../entry/email_mobile.php')); 
     
    104104    } 
    105105    break; 
    106 // ºï½ü 
     106// 削除 
    107107case 'delete': 
    108108    if (sfIsInt($_POST['other_deliv_id'])) { 
     
    113113    } 
    114114    break; 
    115 // ²ñ°÷ÅÐÏ¿½»½ê¤ËÁ÷¤ë 
     115// 会員登録住所に送る 
    116116case 'customer_addr': 
    117     // ¤ªÆϤ±À褬¥Á¥§¥Ã¥¯¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¹¹¿·½èÍý¤ò¹Ô¤¦ 
     117    // お届け先がチェックされている場合には更新処理を行う 
    118118    if ($_POST['deli'] != "") { 
    119         // ²ñ°÷¾ðÊó¤Î½»½ê¤ò¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤Ë½ñ¤­¹þ¤à 
     119        // 会員情報の住所を受注一時テーブルに書き込む 
    120120        lfRegistDelivData($uniqid, $objCustomer); 
    121         // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯ 
     121        // 正常に登録されたことを記録しておく 
    122122        $objSiteSess->setRegistFlag(); 
    123         // ¤ª»Ùʧ¤¤ÊýË¡ÁªÂò¥Ú¡¼¥¸¤Ø°ÜÆ° 
     123        // お支払い方法選択ページへ移動 
    124124        header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_PAYMENT)); 
    125125        exit; 
    126126    }else{ 
    127         // ¥¨¥é¡¼¤òÊÖ¤¹ 
    128         $arrErr['deli'] = '¢¨ ¤ªÆϤ±Àè¤òÁªÂò¤·¤Æ¤¯¤À¤µ¤¤¡£'; 
     127        // エラーを返す 
     128        $arrErr['deli'] = '※ お届け先を選択してください。'; 
    129129    } 
    130130    break; 
    131131     
    132 // ÅÐÏ¿ºÑ¤ß¤ÎÊ̤ΤªÆϤ±Àè¤ËÁ÷¤ë 
     132// 登録済みの別のお届け先に送る 
    133133case 'other_addr': 
    134     // ¤ªÆϤ±À褬¥Á¥§¥Ã¥¯¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ë¤Ï¹¹¿·½èÍý¤ò¹Ô¤¦ 
     134    // お届け先がチェックされている場合には更新処理を行う 
    135135    if ($_POST['deli'] != "") { 
    136136        if (sfIsInt($_POST['other_deliv_id'])) { 
    137             // ÅÐÏ¿ºÑ¤ß¤ÎÊ̤ΤªÆϤ±Àè¤ò¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤Ë½ñ¤­¹þ¤à 
     137            // 登録済みの別のお届け先を受注一時テーブルに書き込む 
    138138            lfRegistOtherDelivData($uniqid, $objCustomer, $_POST['other_deliv_id']); 
    139             // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯ 
     139            // 正常に登録されたことを記録しておく 
    140140            $objSiteSess->setRegistFlag(); 
    141             // ¤ª»Ùʧ¤¤ÊýË¡ÁªÂò¥Ú¡¼¥¸¤Ø°ÜÆ° 
     141            // お支払い方法選択ページへ移動 
    142142            header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_PAYMENT)); 
    143143            exit; 
    144144        } 
    145145    }else{ 
    146         // ¥¨¥é¡¼¤òÊÖ¤¹ 
    147         $arrErr['deli'] = '¢¨ ¤ªÆϤ±Àè¤òÁªÂò¤·¤Æ¤¯¤À¤µ¤¤¡£'; 
     146        // エラーを返す 
     147        $arrErr['deli'] = '※ お届け先を選択してください。'; 
    148148    } 
    149149    break; 
    150150 
    151151/* 
    152 // Ê̤ΤªÆϤ±Àè¤ò»ØÄê 
     152// 別のお届け先を指定 
    153153case 'new_addr': 
    154     // ÆþÎÏÃͤÎÊÑ´¹ 
     154    // 入力値の変換 
    155155    $objFormParam->convParam(); 
    156156    $objPage->arrErr = lfCheckError($arrRet); 
    157     // ÆþÎÏ¥¨¥é¡¼¤Ê¤· 
     157    // 入力エラーなし 
    158158    if(count($objPage->arrErr) == 0) { 
    159         // DB¤Ø¤ªÆϤ±Àè¤òÅÐÏ¿ 
     159        // DBへお届け先を登録 
    160160        lfRegistNewAddrData($uniqid, $objCustomer); 
    161         // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯ 
     161        // 正常に登録されたことを記録しておく 
    162162        $objSiteSess->setRegistFlag(); 
    163         // ¤ª»Ùʧ¤¤ÊýË¡ÁªÂò¥Ú¡¼¥¸¤Ø°ÜÆ° 
     163        // お支払い方法選択ページへ移動 
    164164        header("Location: " . URL_SHOP_PAYMENT); 
    165165        exit; 
     
    168168*/ 
    169169 
    170 // Á°¤Î¥Ú¡¼¥¸¤ËÌá¤ë 
     170// 前のページに戻る 
    171171case 'return': 
    172     // ³Îǧ¥Ú¡¼¥¸¤Ø°ÜÆ° 
     172    // 確認ページへ移動 
    173173    header("Location: " . MOBILE_URL_CART_TOP); 
    174174    exit; 
     
    182182} 
    183183 
    184 /** ɽ¼¨½èÍý **/ 
    185  
    186 // ²ñ°÷ÅÐÏ¿½»½ê¤Î¼èÆÀ 
     184/** 表示処理 **/ 
     185 
     186// 会員登録住所の取得 
    187187$col = "name01, name02, pref, addr01, addr02, zip01, zip02"; 
    188188$where = "customer_id = ?"; 
    189189$objQuery = new SC_Query(); 
    190190$arrCustomerAddr = $objQuery->select($col, "dtb_customer", $where, array($_SESSION['customer']['customer_id'])); 
    191 // Ê̤ΤªÆϤ±Àè½»½ê¤Î¼èÆÀ 
     191// 別のお届け先住所の取得 
    192192$col = "other_deliv_id, name01, name02, pref, addr01, addr02, zip01, zip02"; 
    193193$objQuery->setorder("other_deliv_id DESC"); 
     
    200200} 
    201201 
    202 // ÆþÎÏÃͤμèÆÀ 
     202// 入力値の取得 
    203203$objPage->arrForm = $objFormParam->getFormParamList(); 
    204204$objPage->arrErr = $arrErr; 
     
    206206$objView->display(SITE_FRAME); 
    207207//-------------------------------------------------------------------------------------------------------------------------- 
    208 /* ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ */ 
     208/* パラメータ情報の初期化 */ 
    209209function lfInitParam() { 
    210210    global $objFormParam; 
    211     $objFormParam->addParam("¤ªÌ¾Á°1", "deliv_name01", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    212     $objFormParam->addParam("¤ªÌ¾Á°2", "deliv_name02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    213     $objFormParam->addParam("¥Õ¥ê¥¬¥Ê1", "deliv_kana01", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    214     $objFormParam->addParam("¥Õ¥ê¥¬¥Ê2", "deliv_kana02", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    215     $objFormParam->addParam("͹ÊØÈÖ¹æ1", "deliv_zip01", ZIP01_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
    216     $objFormParam->addParam("͹ÊØÈÖ¹æ2", "deliv_zip02", ZIP02_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
    217     $objFormParam->addParam("ÅÔÆ»Éܸ©", "deliv_pref", INT_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK")); 
    218     $objFormParam->addParam("½»½ê1", "deliv_addr01", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    219     $objFormParam->addParam("½»½ê2", "deliv_addr02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    220     $objFormParam->addParam("ÅÅÏÃÈÖ¹æ1", "deliv_tel01", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    221     $objFormParam->addParam("ÅÅÏÃÈÖ¹æ2", "deliv_tel02", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    222     $objFormParam->addParam("ÅÅÏÃÈÖ¹æ3", "deliv_tel03", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     211    $objFormParam->addParam("お名前1", "deliv_name01", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     212    $objFormParam->addParam("お名前2", "deliv_name02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     213    $objFormParam->addParam("フリガナ1", "deliv_kana01", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     214    $objFormParam->addParam("フリガナ2", "deliv_kana02", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     215    $objFormParam->addParam("郵便番号1", "deliv_zip01", ZIP01_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
     216    $objFormParam->addParam("郵便番号2", "deliv_zip02", ZIP02_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
     217    $objFormParam->addParam("都道府県", "deliv_pref", INT_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK")); 
     218    $objFormParam->addParam("住所1", "deliv_addr01", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     219    $objFormParam->addParam("住所2", "deliv_addr02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     220    $objFormParam->addParam("電話番号1", "deliv_tel01", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     221    $objFormParam->addParam("電話番号2", "deliv_tel02", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     222    $objFormParam->addParam("電話番号3", "deliv_tel03", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    223223} 
    224224 
    225225function lfInitLoginFormParam() { 
    226226    global $objLoginFormParam; 
    227     $objLoginFormParam->addParam("µ­²±¤¹¤ë", "login_memory", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
    228     $objLoginFormParam->addParam("¥á¡¼¥ë¥¢¥É¥ì¥¹", "login_email", STEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK")); 
    229     $objLoginFormParam->addParam("¥Ñ¥¹¥ï¡¼¥É", "login_pass", STEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK")); 
    230 } 
    231  
    232 /* DB¤Ø¥Ç¡¼¥¿¤ÎÅÐÏ¿ */ 
     227    $objLoginFormParam->addParam("記憶する", "login_memory", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     228    $objLoginFormParam->addParam("メールアドレス", "login_email", STEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK")); 
     229    $objLoginFormParam->addParam("パスワード", "login_pass", STEXT_LEN, "KVa", array("EXIST_CHECK", "MAX_LENGTH_CHECK")); 
     230} 
     231 
     232/* DBへデータの登録 */ 
    233233function lfRegistNewAddrData($uniqid, $objCustomer) { 
    234234    global $objFormParam; 
    235235    $arrRet = $objFormParam->getHashArray(); 
    236236    $sqlval = $objFormParam->getDbArray(); 
    237     // ÅÐÏ¿¥Ç¡¼¥¿¤ÎºîÀ® 
     237    // 登録データの作成 
    238238    $sqlval['deliv_check'] = '1'; 
    239239    $sqlval['order_temp_id'] = $uniqid; 
     
    245245} 
    246246 
    247 /* ²ñ°÷¾ðÊó¤Î½»½ê¤ò°ì»þ¼õÃí¥Æ¡¼¥Ö¥ë¤Ø */ 
     247/* 会員情報の住所を一時受注テーブルへ */ 
    248248function lfRegistDelivData($uniqid, $objCustomer) { 
    249     // ÅÐÏ¿¥Ç¡¼¥¿¤ÎºîÀ® 
     249    // 登録データの作成 
    250250    $sqlval['order_temp_id'] = $uniqid; 
    251251    $sqlval['update_date'] = 'Now()'; 
     
    272272} 
    273273 
    274 /* Ê̤ΤªÆϤ±Àè½»½ê¤ò°ì»þ¼õÃí¥Æ¡¼¥Ö¥ë¤Ø */ 
     274/* 別のお届け先住所を一時受注テーブルへ */ 
    275275function lfRegistOtherDelivData($uniqid, $objCustomer, $other_deliv_id) { 
    276     // ÅÐÏ¿¥Ç¡¼¥¿¤ÎºîÀ® 
     276    // 登録データの作成 
    277277    $sqlval['order_temp_id'] = $uniqid; 
    278278    $sqlval['update_date'] = 'Now()'; 
     
    300300} 
    301301 
    302 /* ÆþÎÏÆâÍƤΥÁ¥§¥Ã¥¯ */ 
     302/* 入力内容のチェック */ 
    303303function lfCheckError() { 
    304304    global $objFormParam; 
    305     // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£ 
     305    // 入力データを渡す。 
    306306    $arrRet =  $objFormParam->getHashArray(); 
    307307    $objErr = new SC_CheckError($arrRet); 
    308308    $objErr->arrErr = $objFormParam->checkError(); 
    309     // Ê£¿ô¹àÌÜ¥Á¥§¥Ã¥¯ 
     309    // 複数項目チェック 
    310310    if ($_POST['mode'] == 'login'){ 
    311     $objErr->doFunc(array("¥á¡¼¥ë¥¢¥É¥ì¥¹", "login_email", STEXT_LEN), array("EXIST_CHECK")); 
    312     $objErr->doFunc(array("¥Ñ¥¹¥ï¡¼¥É", "login_pass", STEXT_LEN), array("EXIST_CHECK")); 
     311    $objErr->doFunc(array("メールアドレス", "login_email", STEXT_LEN), array("EXIST_CHECK")); 
     312    $objErr->doFunc(array("パスワード", "login_pass", STEXT_LEN), array("EXIST_CHECK")); 
    313313    } 
    314314    $objErr->doFunc(array("TEL", "deliv_tel01", "deliv_tel02", "deliv_tel03", TEL_ITEM_LEN), array("TEL_CHECK")); 
  • branches/feature-module-update/html/mobile/shopping/deliv_addr.php

    r12157 r15078  
    66 * http://www.lockon.co.jp/ 
    77 *  
    8  * ÇÛÁ÷Àè¤ÎÄɲà
     8 * 配送先の追加 
    99 */ 
    1010require_once("../require.php"); 
     
    1313    function LC_Page(){ 
    1414        $this->tpl_mainpage = 'shopping/deliv_addr.tpl'; 
    15         $this->tpl_title = "¿·¤·¤¤¤ªÆϤ±Àè¤ÎÄɲÃ"; 
     15        $this->tpl_title = "新しいお届け先の追加"; 
    1616    } 
    1717} 
     
    2525$objCartSess = new SC_CartSession(); 
    2626 
    27 //¥í¥°¥¤¥óȽÄê 
     27//ログイン判定 
    2828if (!$objCustomer->isLoginSuccess()){ 
    2929    sfDispSiteError(CUSTOMER_ERROR, "", false, "", true); 
     
    3232$objPage->arrForm = $_POST; 
    3333$objPage->arrPref = $arrPref; 
    34 //-- ¥Ç¡¼¥¿ÀßÄê 
     34//-- データ設定 
    3535foreach($_POST as $key => $val) { 
    3636    if ($key != "mode" && $key != "return" && $key != "submit" && $key != session_name()) { 
     
    3838    } 
    3939} 
    40 // ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ¤È¹ØÆþ¾õÂÖ¤ÎÀµÅöÀ­¤ò¥Á¥§¥Ã¥¯ 
     40// ユーザユニークIDの取得と購入状態の正当性をチェック 
    4141$uniqid = sfCheckNormalAccess($objSiteSess, $objCartSess); 
    4242 
    43 //Ê̤ΤªÆϤ±Àè£Ä£ÂÅÐÏ¿ÍÑ¥«¥é¥àÇÛÎó 
     43//別のお届け先DB登録用カラム配列 
    4444$arrRegistColumn = array( 
    4545                             array(  "column" => "name01",      "convert" => "aKV" ), 
     
    5757                        ); 
    5858 
    59 // Ìá¤ë¥Ü¥¿¥óÍѽèÍý 
     59// 戻るボタン用処理 
    6060if (!empty($_POST["return"])) { 
    6161    switch ($_POST["mode"]) { 
     
    8383            } 
    8484 
    85             // ͹ÊØÈֹ椫¤é½»½ê¤Î¼èÆÀ 
     85            // 郵便番号から住所の取得 
    8686            if (@$objPage->arrForm['pref'] == "" && @$objPage->arrForm['addr01'] == "" && @$objPage->arrForm['addr02'] == "") { 
    8787                $address = lfGetAddress($_REQUEST['zip01'].$_REQUEST['zip02']); 
     
    113113        $objPage->arrErr = lfErrorCheck($objPage->arrForm); 
    114114        if (count($objPage->arrErr) == 0) { 
    115             // ÅÐÏ¿ 
     115            // 登録 
    116116            $other_deliv_id = lfRegistData($_POST,$arrRegistColumn); 
    117117 
    118             // ÅÐÏ¿ºÑ¤ß¤ÎÊ̤ΤªÆϤ±Àè¤ò¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤Ë½ñ¤­¹þ¤à 
     118            // 登録済みの別のお届け先を受注一時テーブルに書き込む 
    119119            lfRegistOtherDelivData($uniqid, $objCustomer, $other_deliv_id); 
    120120 
    121             // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯ 
     121            // 正常に登録されたことを記録しておく 
    122122            $objSiteSess->setRegistFlag(); 
    123             // ¤ª»Ùʧ¤¤ÊýË¡ÁªÂò¥Ú¡¼¥¸¤Ø°ÜÆ° 
     123            // お支払い方法選択ページへ移動 
    124124            header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_PAYMENT)); 
    125125            exit; 
     
    131131        $deliv_count = $objQuery->count("dtb_other_deliv", "customer_id=?", array($objCustomer->getValue('customer_id'))); 
    132132        if ($deliv_count >= DELIV_ADDR_MAX){ 
    133             sfDispSiteError(FREE_ERROR_MSG, "", false, "ºÇÂçÅÐÏ¿·ï¿ô¤òĶ¤¨¤Æ¤¤¤Þ¤¹¡£"); 
     133            sfDispSiteError(FREE_ERROR_MSG, "", false, "最大登録件数を超えています。"); 
    134134        } 
    135135} 
     
    140140//------------------------------------------------------------------------------------------------------------- 
    141141 
    142 /* ¥¨¥é¡¼¥Á¥§¥Ã¥¯ */ 
     142/* エラーチェック */ 
    143143function lfErrorCheck() { 
    144144    $objErr = new SC_CheckError(); 
    145145     
    146     $objErr->doFunc(array("¤ªÌ¾Á°¡ÊÀ«¡Ë", 'name01', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    147     $objErr->doFunc(array("¤ªÌ¾Á°¡Ê̾¡Ë", 'name02', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    148     $objErr->doFunc(array("¤ªÌ¾Á°¡Ê¥«¥Ê/À«¡Ë", 'kana01', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK", "MAX_LENGTH_CHECK", "KANA_CHECK")); 
    149     $objErr->doFunc(array("¤ªÌ¾Á°¡Ê¥«¥Ê/̾¡Ë", 'kana02', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK", "MAX_LENGTH_CHECK", "KANA_CHECK")); 
    150     $objErr->doFunc(array("͹ÊØÈÖ¹æ1", "zip01", ZIP01_LEN ) ,array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
    151     $objErr->doFunc(array("͹ÊØÈÖ¹æ2", "zip02", ZIP02_LEN ) ,array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK"));  
    152     $objErr->doFunc(array("͹ÊØÈÖ¹æ", "zip01", "zip02"), array("ALL_EXIST_CHECK")); 
    153     $objErr->doFunc(array("ÅÔÆ»Éܸ©", 'pref'), array("SELECT_CHECK","NUM_CHECK")); 
    154     $objErr->doFunc(array("»Ô¶èĮ¼", "addr01", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    155     $objErr->doFunc(array("ÈÖÃÏ", "addr02", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    156     $objErr->doFunc(array("ÅÅÏÃÈÖ¹æ1", 'tel01'), array("EXIST_CHECK","NUM_CHECK")); 
    157     $objErr->doFunc(array("ÅÅÏÃÈÖ¹æ2", 'tel02'), array("EXIST_CHECK","NUM_CHECK")); 
    158     $objErr->doFunc(array("ÅÅÏÃÈÖ¹æ3", 'tel03'), array("EXIST_CHECK","NUM_CHECK")); 
    159     $objErr->doFunc(array("ÅÅÏÃÈÖ¹æ", "tel01", "tel02", "tel03", TEL_LEN) ,array("TEL_CHECK")); 
     146    $objErr->doFunc(array("お名前(姓)", 'name01', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     147    $objErr->doFunc(array("お名前(名)", 'name02', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     148    $objErr->doFunc(array("お名前(カナ/姓)", 'kana01', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK", "MAX_LENGTH_CHECK", "KANA_CHECK")); 
     149    $objErr->doFunc(array("お名前(カナ/名)", 'kana02', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK", "MAX_LENGTH_CHECK", "KANA_CHECK")); 
     150    $objErr->doFunc(array("郵便番号1", "zip01", ZIP01_LEN ) ,array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
     151    $objErr->doFunc(array("郵便番号2", "zip02", ZIP02_LEN ) ,array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK"));  
     152    $objErr->doFunc(array("郵便番号", "zip01", "zip02"), array("ALL_EXIST_CHECK")); 
     153    $objErr->doFunc(array("都道府県", 'pref'), array("SELECT_CHECK","NUM_CHECK")); 
     154    $objErr->doFunc(array("市区町村", "addr01", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     155    $objErr->doFunc(array("番地", "addr02", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     156    $objErr->doFunc(array("電話番号1", 'tel01'), array("EXIST_CHECK","NUM_CHECK")); 
     157    $objErr->doFunc(array("電話番号2", 'tel02'), array("EXIST_CHECK","NUM_CHECK")); 
     158    $objErr->doFunc(array("電話番号3", 'tel03'), array("EXIST_CHECK","NUM_CHECK")); 
     159    $objErr->doFunc(array("電話番号", "tel01", "tel02", "tel03", TEL_LEN) ,array("TEL_CHECK")); 
    160160    return $objErr->arrErr; 
    161161     
    162162} 
    163163 
    164 /* ¥¨¥é¡¼¥Á¥§¥Ã¥¯ */ 
     164/* エラーチェック */ 
    165165function lfErrorCheck1() { 
    166166    $objErr = new SC_CheckError(); 
    167167     
    168     $objErr->doFunc(array("¤ªÌ¾Á°¡ÊÀ«¡Ë", 'name01', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    169     $objErr->doFunc(array("¤ªÌ¾Á°¡Ê̾¡Ë", 'name02', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    170     $objErr->doFunc(array("¤ªÌ¾Á°¡Ê¥«¥Ê/À«¡Ë", 'kana01', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK", "MAX_LENGTH_CHECK", "KANA_CHECK")); 
    171     $objErr->doFunc(array("¤ªÌ¾Á°¡Ê¥«¥Ê/̾¡Ë", 'kana02', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK", "MAX_LENGTH_CHECK", "KANA_CHECK")); 
    172     $objErr->doFunc(array("͹ÊØÈÖ¹æ1", "zip01", ZIP01_LEN ) ,array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
    173     $objErr->doFunc(array("͹ÊØÈÖ¹æ2", "zip02", ZIP02_LEN ) ,array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK"));  
    174     $objErr->doFunc(array("͹ÊØÈÖ¹æ", "zip01", "zip02"), array("ALL_EXIST_CHECK")); 
     168    $objErr->doFunc(array("お名前(姓)", 'name01', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     169    $objErr->doFunc(array("お名前(名)", 'name02', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     170    $objErr->doFunc(array("お名前(カナ/姓)", 'kana01', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK", "MAX_LENGTH_CHECK", "KANA_CHECK")); 
     171    $objErr->doFunc(array("お名前(カナ/名)", 'kana02', STEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK", "MAX_LENGTH_CHECK", "KANA_CHECK")); 
     172    $objErr->doFunc(array("郵便番号1", "zip01", ZIP01_LEN ) ,array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
     173    $objErr->doFunc(array("郵便番号2", "zip02", ZIP02_LEN ) ,array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK"));  
     174    $objErr->doFunc(array("郵便番号", "zip01", "zip02"), array("ALL_EXIST_CHECK")); 
    175175    return $objErr->arrErr; 
    176176     
    177177} 
    178178 
    179 /* ¥¨¥é¡¼¥Á¥§¥Ã¥¯ */ 
     179/* エラーチェック */ 
    180180function lfErrorCheck2() { 
    181181    $objErr = new SC_CheckError(); 
    182182     
    183     $objErr->doFunc(array("ÅÔÆ»Éܸ©", 'pref'), array("SELECT_CHECK","NUM_CHECK")); 
    184     $objErr->doFunc(array("»Ô¶èĮ¼", "addr01", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    185     $objErr->doFunc(array("ÈÖÃÏ", "addr02", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
    186     $objErr->doFunc(array("ÅÅÏÃÈÖ¹æ1", 'tel01'), array("EXIST_CHECK","NUM_CHECK")); 
    187     $objErr->doFunc(array("ÅÅÏÃÈÖ¹æ2", 'tel02'), array("EXIST_CHECK","NUM_CHECK")); 
    188     $objErr->doFunc(array("ÅÅÏÃÈÖ¹æ3", 'tel03'), array("EXIST_CHECK","NUM_CHECK")); 
    189     $objErr->doFunc(array("ÅÅÏÃÈÖ¹æ", "tel01", "tel02", "tel03", TEL_LEN) ,array("TEL_CHECK")); 
     183    $objErr->doFunc(array("都道府県", 'pref'), array("SELECT_CHECK","NUM_CHECK")); 
     184    $objErr->doFunc(array("市区町村", "addr01", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     185    $objErr->doFunc(array("番地", "addr02", MTEXT_LEN), array("EXIST_CHECK","SPTAB_CHECK","MAX_LENGTH_CHECK")); 
     186    $objErr->doFunc(array("電話番号1", 'tel01'), array("EXIST_CHECK","NUM_CHECK")); 
     187    $objErr->doFunc(array("電話番号2", 'tel02'), array("EXIST_CHECK","NUM_CHECK")); 
     188    $objErr->doFunc(array("電話番号3", 'tel03'), array("EXIST_CHECK","NUM_CHECK")); 
     189    $objErr->doFunc(array("電話番号", "tel01", "tel02", "tel03", TEL_LEN) ,array("TEL_CHECK")); 
    190190    return $objErr->arrErr; 
    191191     
     
    194194 
    195195 
    196 /* ÅÐÏ¿¼Â¹Ô */ 
     196/* 登録実行 */ 
    197197function lfRegistData($array, $arrRegistColumn) { 
    198198    global $objConn; 
     
    207207    $arrRegist['customer_id'] = $objCustomer->getvalue('customer_id'); 
    208208     
    209     //-- ÊÔ½¸ÅÐÏ¿¼Â¹Ô 
     209    //-- 編集登録実行 
    210210    $objConn->query("BEGIN"); 
    211211    if ($array['other_deliv_id'] != ""){ 
     
    223223} 
    224224 
    225 //----¡¡¼èÆÀʸ»úÎó¤ÎÊÑ´¹ 
     225//---- 取得文字列の変換 
    226226function lfConvertParam($array, $arrRegistColumn) { 
    227227    /* 
    228      *  ʸ»úÎó¤ÎÊÑ´¹ 
    229      *  K :  ¡ÖȾ³Ñ(ŽÊŽÝŽ¶Ž¸)ÊÒ²¾Ì¾¡×¤ò¡ÖÁ´³ÑÊÒ²¾Ì¾¡×¤ËÊÑ´¹ 
    230      *  C :  ¡ÖÁ´³Ñ¤Ò¤é²¾Ì¾¡×¤ò¡ÖÁ´³Ñ¤«¤¿²¾Ì¾¡×¤ËÊÑ´¹ 
    231      *  V :  ÂùÅÀÉÕ¤­¤Îʸ»ú¤ò°ìʸ»ú¤ËÊÑ´¹¡£"K","H"¤È¶¦¤Ë»ÈÍѤ·¤Þ¤¹   
    232      *  n :  ¡ÖÁ´³Ñ¡×¿ô»ú¤ò¡ÖȾ³Ñ(ŽÊŽÝŽ¶Ž¸)¡×¤ËÊÑ´¹ 
    233      *  a :  Á´³Ñ±Ñ¿ô»ú¤òȾ³Ñ±Ñ¿ô»ú¤ËÊÑ´¹¤¹¤ë 
     228     *  文字列の変換 
     229     *  K :  「半角(ハンカク)片仮名」を「全角片仮名」に変換 
     230     *  C :  「全角ひら仮名」を「全角かた仮名」に変換 
     231     *  V :  濁点付きの文字を一文字に変換。"K","H"と共に使用します  
     232     *  n :  「全角」数字を「半角(ハンカク)」に変換 
     233     *  a :  全角英数字を半角英数字に変換する 
    234234     */ 
    235     // ¥«¥é¥à̾¤È¥³¥ó¥Ð¡¼¥È¾ðÊó 
     235    // カラム名とコンバート情報 
    236236    foreach ($arrRegistColumn as $data) { 
    237237        $arrConvList[ $data["column"] ] = $data["convert"]; 
    238238    } 
    239239     
    240     // ʸ»úÊÑ´¹ 
     240    // 文字変換 
    241241    foreach ($arrConvList as $key => $val) { 
    242         // POST¤µ¤ì¤Æ¤­¤¿ÃͤΤßÊÑ´¹¤¹¤ë¡£ 
     242        // POSTされてきた値のみ変換する。 
    243243        if(strlen(($array[$key])) > 0) { 
    244244            $array[$key] = mb_convert_kana($array[$key] ,$val); 
     
    248248} 
    249249 
    250 // ͹ÊØÈֹ椫¤é½»½ê¤Î¼èÆÀ 
     250// 郵便番号から住所の取得 
    251251function lfGetAddress($zipcode) { 
    252252    global $arrPref; 
     
    254254    $conn = new SC_DBconn(ZIP_DSN); 
    255255 
    256     // ͹ÊØÈֹ渡º÷ʸºîÀ® 
     256    // 郵便番号検索文作成 
    257257    $zipcode = mb_convert_kana($zipcode ,"n"); 
    258258    $sqlse = "SELECT state, city, town FROM mtb_zip WHERE zipcode = ?"; 
     
    260260    $data_list = $conn->getAll($sqlse, array($zipcode)); 
    261261 
    262     // ¥¤¥ó¥Ç¥Ã¥¯¥¹¤ÈÃͤòȿž¤µ¤»¤ë¡£ 
     262    // インデックスと値を反転させる。 
    263263    $arrREV_PREF = array_flip($arrPref); 
    264264 
    265265    /* 
    266         Áí̳¾Ê¤«¤é¥À¥¦¥ó¥í¡¼¥É¤·¤¿¥Ç¡¼¥¿¤ò¤½¤Î¤Þ¤Þ¥¤¥ó¥Ý¡¼¥È¤¹¤ë¤È 
    267         °Ê²¼¤Î¤è¤¦¤Êʸ»úÎó¤¬Æþ¤Ã¤Æ¤¤¤ë¤Î¤Ç  Âкö¤¹¤ë¡£ 
    268         ¡¦¡Ê£±¡¦£±£¹ÃúÌÜ¡Ë 
    269         ¡¦°Ê²¼¤Ë·ÇºÜ¤¬¤Ê¤¤¾ì¹ç 
     266        総務省からダウンロードしたデータをそのままインポートすると 
     267        以下のような文字列が入っているので   対策する。 
     268        ・(1・19丁目) 
     269        ・以下に掲載がない場合 
    270270    */ 
    271271    $town =  $data_list[0]['town']; 
    272     $town = ereg_replace("¡Ê.*¡Ë$","",$town); 
    273     $town = ereg_replace("°Ê²¼¤Ë·ÇºÜ¤¬¤Ê¤¤¾ì¹ç","",$town); 
     272    $town = ereg_replace("(.*)$","",$town); 
     273    $town = ereg_replace("以下に掲載がない場合","",$town); 
    274274    $data_list[0]['town'] = $town; 
    275275    $data_list[0]['state'] = $arrREV_PREF[$data_list[0]['state']]; 
     
    278278} 
    279279 
    280 /* Ê̤ΤªÆϤ±Àè½»½ê¤ò°ì»þ¼õÃí¥Æ¡¼¥Ö¥ë¤Ø */ 
     280/* 別のお届け先住所を一時受注テーブルへ */ 
    281281function lfRegistOtherDelivData($uniqid, $objCustomer, $other_deliv_id) { 
    282     // ÅÐÏ¿¥Ç¡¼¥¿¤ÎºîÀ® 
     282    // 登録データの作成 
    283283    $sqlval['order_temp_id'] = $uniqid; 
    284284    $sqlval['update_date'] = 'Now()'; 
  • branches/feature-module-update/html/mobile/shopping/index.php

    r12157 r15078  
    2525         
    2626        /* 
    27          session_start»þ¤Îno-cache¥Ø¥Ã¥À¡¼¤òÍÞÀ©¤¹¤ë¤³¤È¤Ç 
    28          ¡ÖÌá¤ë¡×¥Ü¥¿¥ó»ÈÍÑ»þ¤ÎÍ­¸ú´ü¸ÂÀÚ¤ìɽ¼¨¤òÍÞÀ©¤¹¤ë¡£ 
    29          private-no-expire:¥¯¥é¥¤¥¢¥ó¥È¤Î¥­¥ã¥Ã¥·¥å¤òµö²Ä¤¹¤ë¡£ 
     27         session_start時のno-cacheヘッダーを抑制することで 
     28         「戻る」ボタン使用時の有効期限切れ表示を抑制する。 
     29         private-no-expire:クライアントのキャッシュを許可する。 
    3030        */ 
    3131        session_cache_limiter('private-no-expire');              
     
    4040$objCustomer = new SC_Customer(); 
    4141$objCookie = new SC_Cookie(); 
    42 $objFormParam = new SC_FormParam();         // ¥Õ¥©¡¼¥àÍÑ 
    43 lfInitParam();                              // ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ 
    44 $objFormParam->setParam($_POST);            // POSTÃͤμèÆÀ 
    45  
    46 // ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ¤È¹ØÆþ¾õÂÖ¤ÎÀµÅöÀ­¤ò¥Á¥§¥Ã¥¯ 
     42$objFormParam = new SC_FormParam();         // フォーム用 
     43lfInitParam();                              // パラメータ情報の初期化 
     44$objFormParam->setParam($_POST);            // POST値の取得 
     45 
     46// ユーザユニークIDの取得と購入状態の正当性をチェック 
    4747$uniqid = sfCheckNormalAccess($objSiteSess, $objCartSess); 
    4848 
    4949$objPage->tpl_uniqid = $uniqid; 
    5050 
    51 // ¥í¥°¥¤¥ó¥Á¥§¥Ã¥¯ 
     51// ログインチェック 
    5252if($objCustomer->isLoginSuccess()) { 
    53     // ¤¹¤Ç¤Ë¥í¥°¥¤¥ó¤µ¤ì¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¤ªÆϤ±ÀèÀßÄê²èÌ̤ËžÁ÷ 
     53    // すでにログインされている場合は、お届け先設定画面に転送 
    5454    header("Location: " . gfAddSessionId('deliv.php')); 
    5555    exit; 
    5656} 
    5757 
    58 // ·ÈÂÓüËöID¤¬°ìÃפ¹¤ë²ñ°÷¤¬Â¸ºß¤¹¤ë¤«¤É¤¦¤«¤ò¥Á¥§¥Ã¥¯¤¹¤ë¡£ 
     58// 携帯端末IDが一致する会員が存在するかどうかをチェックする。 
    5959$objPage->tpl_valid_phone_id = $objCustomer->checkMobilePhoneId(); 
    6060 
     
    6262case 'nonmember_confirm': 
    6363    $objPage = lfSetNonMember($objPage); 
    64     // ¢¨break¤Ê¤· 
     64    // ※breakなし 
    6565case 'confirm': 
    66     // ÆþÎÏÃͤÎÊÑ´¹ 
     66    // 入力値の変換 
    6767    $objFormParam->convParam(); 
    6868    $objFormParam->toLower('order_mail'); 
     
    7171    $objPage->arrErr = lfCheckError(); 
    7272 
    73     // ÆþÎÏ¥¨¥é¡¼¤Ê¤· 
     73    // 入力エラーなし 
    7474    if(count($objPage->arrErr) == 0) { 
    75         // DB¤Ø¤Î¥Ç¡¼¥¿ÅÐÏ¿ 
     75        // DBへのデータ登録 
    7676        lfRegistData($uniqid); 
    77         // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯ 
     77        // 正常に登録されたことを記録しておく 
    7878        $objSiteSess->setRegistFlag(); 
    79         // ¤ª»Ùʧ¤¤ÊýË¡ÁªÂò¥Ú¡¼¥¸¤Ø°ÜÆ° 
     79        // お支払い方法選択ページへ移動 
    8080        header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_PAYMENT)); 
    8181        exit;        
     
    8383     
    8484    break; 
    85 // Á°¤Î¥Ú¡¼¥¸¤ËÌá¤ë 
     85// 前のページに戻る 
    8686case 'return': 
    87     // ³Îǧ¥Ú¡¼¥¸¤Ø°ÜÆ° 
     87    // 確認ページへ移動 
    8888    header("Location: " . gfAddSessionId(MOBILE_URL_CART_TOP)); 
    8989    exit; 
     
    9191case 'nonmember': 
    9292    $objPage = lfSetNonMember($objPage); 
    93     // ¢¨break¤Ê¤· 
     93    // ※breakなし 
    9494default: 
    9595    if($_GET['from'] == 'nonmember') { 
    9696        $objPage = lfSetNonMember($objPage); 
    9797    } 
    98     // ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ 
     98    // ユーザユニークIDの取得 
    9999    $uniqid = $objSiteSess->getUniqId(); 
    100100    $objQuery = new SC_Query(); 
    101101    $where = "order_temp_id = ?"; 
    102102    $arrRet = $objQuery->select("*", "dtb_order_temp", $where, array($uniqid)); 
    103     // DBÃͤμèÆÀ 
     103    // DB値の取得 
    104104    $objFormParam->setParam($arrRet[0]); 
    105105    $objFormParam->setValue('order_email_check', $arrRet[0]['order_email']); 
     
    108108} 
    109109 
    110 // ¥¯¥Ã¥­¡¼È½Äê 
     110// クッキー判定 
    111111$objPage->tpl_login_email = $objCookie->getCookie('login_email'); 
    112112if($objPage->tpl_login_email != "") { 
     
    114114} 
    115115 
    116 // ÁªÂòÍÑÆüÉդμèÆÀ 
     116// 選択用日付の取得 
    117117$objDate = new SC_Date(START_BIRTH_YEAR); 
    118 $objPage->arrYear = $objDate->getYear('', 1950);    //¡¡ÆüÉÕ¥×¥ë¥À¥¦¥óÀßÄê 
     118$objPage->arrYear = $objDate->getYear('', 1950);    // 日付プルダウン設定 
    119119$objPage->arrMonth = $objDate->getMonth(); 
    120120$objPage->arrDay = $objDate->getDay(); 
     
    124124} 
    125125 
    126 // ÆþÎÏÃͤμèÆÀ 
     126// 入力値の取得 
    127127$objPage->arrForm = $objFormParam->getFormParamList(); 
    128128 
     
    134134$objView->display(SITE_FRAME); 
    135135//-------------------------------------------------------------------------------------------------------------------------- 
    136 /* Èó²ñ°÷ÆþÎÏ¥Ú¡¼¥¸¤Î¥»¥Ã¥È */ 
     136/* 非会員入力ページのセット */ 
    137137function lfSetNonMember($objPage) { 
    138138    $objPage->tpl_mainpage = 'shopping/nonmember_input.tpl'; 
     
    142142} 
    143143 
    144 /* ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ */ 
     144/* パラメータ情報の初期化 */ 
    145145function lfInitParam() { 
    146146    global $objFormParam; 
    147     $objFormParam->addParam("¤ªÌ¾Á°¡ÊÀ«¡Ë", "order_name01", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    148     $objFormParam->addParam("¤ªÌ¾Á°¡Ê̾¡Ë", "order_name02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    149     $objFormParam->addParam("¥Õ¥ê¥¬¥Ê¡Ê¥»¥¤¡Ë", "order_kana01", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    150     $objFormParam->addParam("¥Õ¥ê¥¬¥Ê¡Ê¥á¥¤¡Ë", "order_kana02", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    151     $objFormParam->addParam("͹ÊØÈÖ¹æ1", "order_zip01", ZIP01_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
    152     $objFormParam->addParam("͹ÊØÈÖ¹æ2", "order_zip02", ZIP02_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
    153     $objFormParam->addParam("ÅÔÆ»Éܸ©", "order_pref", INT_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK")); 
    154     $objFormParam->addParam("½»½ê1", "order_addr01", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    155     $objFormParam->addParam("½»½ê2", "order_addr02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    156     $objFormParam->addParam("ÅÅÏÃÈÖ¹æ1", "order_tel01", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    157     $objFormParam->addParam("ÅÅÏÃÈÖ¹æ2", "order_tel02", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    158     $objFormParam->addParam("ÅÅÏÃÈÖ¹æ3", "order_tel03", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    159     $objFormParam->addParam("FAXÈÖ¹æ1", "order_fax01", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    160     $objFormParam->addParam("FAXÈÖ¹æ2", "order_fax02", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    161     $objFormParam->addParam("FAXÈÖ¹æ3", "order_fax03", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    162     $objFormParam->addParam("¥á¡¼¥ë¥¢¥É¥ì¥¹", "order_email", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "NO_SPTAB", "MAX_LENGTH_CHECK", "EMAIL_CHECK", "EMAIL_CHAR_CHECK")); 
    163     $objFormParam->addParam("¥á¡¼¥ë¥¢¥É¥ì¥¹¡Ê³Îǧ¡Ë", "order_email_check", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "NO_SPTAB", "MAX_LENGTH_CHECK", "EMAIL_CHECK", "EMAIL_CHAR_CHECK"), "", false); 
    164     $objFormParam->addParam("ǯ", "year", INT_LEN, "n", array("MAX_LENGTH_CHECK"), "", false); 
    165     $objFormParam->addParam("·î", "month", INT_LEN, "n", array("MAX_LENGTH_CHECK"), "", false); 
    166     $objFormParam->addParam("Æü", "day", INT_LEN, "n", array("MAX_LENGTH_CHECK"), "", false); 
    167     $objFormParam->addParam("À­ÊÌ", "order_sex", INT_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK")); 
    168     $objFormParam->addParam("¿¦¶È", "order_job", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
    169     $objFormParam->addParam("Ê̤ΤªÆϤ±Àè", "deliv_check", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
    170     $objFormParam->addParam("¤ªÌ¾Á°¡ÊÀ«¡Ë", "deliv_name01", STEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    171     $objFormParam->addParam("¤ªÌ¾Á°¡Ê̾¡Ë", "deliv_name02", STEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    172     $objFormParam->addParam("¥Õ¥ê¥¬¥Ê¡Ê¥»¥¤¡Ë", "deliv_kana01", STEXT_LEN, "KVCa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    173     $objFormParam->addParam("¥Õ¥ê¥¬¥Ê¡Ê¥á¥¤¡Ë", "deliv_kana02", STEXT_LEN, "KVCa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    174     $objFormParam->addParam("͹ÊØÈÖ¹æ1", "deliv_zip01", ZIP01_LEN, "n", array("NUM_CHECK", "NUM_COUNT_CHECK")); 
    175     $objFormParam->addParam("͹ÊØÈÖ¹æ2", "deliv_zip02", ZIP02_LEN, "n", array("NUM_CHECK", "NUM_COUNT_CHECK")); 
    176     $objFormParam->addParam("ÅÔÆ»Éܸ©", "deliv_pref", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
    177     $objFormParam->addParam("½»½ê1", "deliv_addr01", STEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    178     $objFormParam->addParam("½»½ê2", "deliv_addr02", STEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    179     $objFormParam->addParam("ÅÅÏÃÈÖ¹æ1", "deliv_tel01", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    180     $objFormParam->addParam("ÅÅÏÃÈÖ¹æ2", "deliv_tel02", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    181     $objFormParam->addParam("ÅÅÏÃÈÖ¹æ3", "deliv_tel03", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
    182     $objFormParam->addParam("¥á¡¼¥ë¥Þ¥¬¥¸¥ó", "mail_flag", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"), 1); 
    183 } 
    184  
    185 /* DB¤Ø¥Ç¡¼¥¿¤ÎÅÐÏ¿ */ 
     147    $objFormParam->addParam("お名前(姓)", "order_name01", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     148    $objFormParam->addParam("お名前(名)", "order_name02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     149    $objFormParam->addParam("フリガナ(セイ)", "order_kana01", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     150    $objFormParam->addParam("フリガナ(メイ)", "order_kana02", STEXT_LEN, "KVCa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     151    $objFormParam->addParam("郵便番号1", "order_zip01", ZIP01_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
     152    $objFormParam->addParam("郵便番号2", "order_zip02", ZIP02_LEN, "n", array("EXIST_CHECK", "NUM_CHECK", "NUM_COUNT_CHECK")); 
     153    $objFormParam->addParam("都道府県", "order_pref", INT_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK")); 
     154    $objFormParam->addParam("住所1", "order_addr01", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     155    $objFormParam->addParam("住所2", "order_addr02", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     156    $objFormParam->addParam("電話番号1", "order_tel01", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     157    $objFormParam->addParam("電話番号2", "order_tel02", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     158    $objFormParam->addParam("電話番号3", "order_tel03", TEL_ITEM_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     159    $objFormParam->addParam("FAX番号1", "order_fax01", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     160    $objFormParam->addParam("FAX番号2", "order_fax02", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     161    $objFormParam->addParam("FAX番号3", "order_fax03", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     162    $objFormParam->addParam("メールアドレス", "order_email", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "NO_SPTAB", "MAX_LENGTH_CHECK", "EMAIL_CHECK", "EMAIL_CHAR_CHECK")); 
     163    $objFormParam->addParam("メールアドレス(確認)", "order_email_check", STEXT_LEN, "KVa", array("EXIST_CHECK", "SPTAB_CHECK", "NO_SPTAB", "MAX_LENGTH_CHECK", "EMAIL_CHECK", "EMAIL_CHAR_CHECK"), "", false); 
     164    $objFormParam->addParam("", "year", INT_LEN, "n", array("MAX_LENGTH_CHECK"), "", false); 
     165    $objFormParam->addParam("", "month", INT_LEN, "n", array("MAX_LENGTH_CHECK"), "", false); 
     166    $objFormParam->addParam("", "day", INT_LEN, "n", array("MAX_LENGTH_CHECK"), "", false); 
     167    $objFormParam->addParam("性別", "order_sex", INT_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK")); 
     168    $objFormParam->addParam("職業", "order_job", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     169    $objFormParam->addParam("別のお届け先", "deliv_check", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     170    $objFormParam->addParam("お名前(姓)", "deliv_name01", STEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     171    $objFormParam->addParam("お名前(名)", "deliv_name02", STEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     172    $objFormParam->addParam("フリガナ(セイ)", "deliv_kana01", STEXT_LEN, "KVCa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     173    $objFormParam->addParam("フリガナ(メイ)", "deliv_kana02", STEXT_LEN, "KVCa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     174    $objFormParam->addParam("郵便番号1", "deliv_zip01", ZIP01_LEN, "n", array("NUM_CHECK", "NUM_COUNT_CHECK")); 
     175    $objFormParam->addParam("郵便番号2", "deliv_zip02", ZIP02_LEN, "n", array("NUM_CHECK", "NUM_COUNT_CHECK")); 
     176    $objFormParam->addParam("都道府県", "deliv_pref", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     177    $objFormParam->addParam("住所1", "deliv_addr01", STEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     178    $objFormParam->addParam("住所2", "deliv_addr02", STEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     179    $objFormParam->addParam("電話番号1", "deliv_tel01", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     180    $objFormParam->addParam("電話番号2", "deliv_tel02", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     181    $objFormParam->addParam("電話番号3", "deliv_tel03", TEL_ITEM_LEN, "n", array("MAX_LENGTH_CHECK" ,"NUM_CHECK")); 
     182    $objFormParam->addParam("メールマガジン", "mail_flag", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"), 1); 
     183} 
     184 
     185/* DBへデータの登録 */ 
    186186function lfRegistData($uniqid) { 
    187187    global $objFormParam; 
    188188    $arrRet = $objFormParam->getHashArray(); 
    189189    $sqlval = $objFormParam->getDbArray(); 
    190     // ÅÐÏ¿¥Ç¡¼¥¿¤ÎºîÀ® 
     190    // 登録データの作成 
    191191    $sqlval['order_temp_id'] = $uniqid; 
    192192    $sqlval['order_birth'] = sfGetTimestamp($arrRet['year'], $arrRet['month'], $arrRet['day']); 
     
    194194    $sqlval['customer_id'] = '0'; 
    195195     
    196     // ´û¸¥Ç¡¼¥¿¤Î¥Á¥§¥Ã¥¯ 
     196    // 既存データのチェック 
    197197    $objQuery = new SC_Query(); 
    198198    $where = "order_temp_id = ?"; 
    199199    $cnt = $objQuery->count("dtb_order_temp", $where, array($uniqid)); 
    200     // ´û¸¥Ç¡¼¥¿¤¬¤Ê¤¤¾ì¹ç 
     200    // 既存データがない場合 
    201201    if ($cnt == 0) { 
    202202        $sqlval['create_date'] = 'Now()'; 
     
    207207} 
    208208 
    209 /* ÆþÎÏÆâÍƤΥÁ¥§¥Ã¥¯ */ 
     209/* 入力内容のチェック */ 
    210210function lfCheckError() { 
    211211    global $objFormParam; 
    212     // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£ 
     212    // 入力データを渡す。 
    213213    $arrRet =  $objFormParam->getHashArray(); 
    214214    $objErr = new SC_CheckError($arrRet); 
    215215    $objErr->arrErr = $objFormParam->checkError(); 
    216216         
    217     // Ê̤ΤªÆϤ±Àè¥Á¥§¥Ã¥¯ 
     217    // 別のお届け先チェック 
    218218    if($_POST['deliv_check'] == "1") {  
    219         $objErr->doFunc(array("¤ªÌ¾Á°¡ÊÀ«¡Ë", "deliv_name01"), array("EXIST_CHECK")); 
    220         $objErr->doFunc(array("¤ªÌ¾Á°¡Ê̾¡Ë", "deliv_name02"), array("EXIST_CHECK")); 
    221         $objErr->doFunc(array("¥Õ¥ê¥¬¥Ê¡Ê¥»¥¤¡Ë", "deliv_kana01"), array("EXIST_CHECK")); 
    222         $objErr->doFunc(array("¥Õ¥ê¥¬¥Ê¡Ê¥á¥¤¡Ë", "deliv_kana02"), array("EXIST_CHECK")); 
    223         $objErr->doFunc(array("͹ÊØÈÖ¹æ1", "deliv_zip01"), array("EXIST_CHECK")); 
    224         $objErr->doFunc(array("͹ÊØÈÖ¹æ2", "deliv_zip02"), array("EXIST_CHECK")); 
    225         $objErr->doFunc(array("ÅÔÆ»Éܸ©", "deliv_pref"), array("EXIST_CHECK")); 
    226         $objErr->doFunc(array("½»½ê1", "deliv_addr01"), array("EXIST_CHECK")); 
    227         $objErr->doFunc(array("½»½ê2", "deliv_addr02"), array("EXIST_CHECK")); 
    228         $objErr->doFunc(array("ÅÅÏÃÈÖ¹æ1", "deliv_tel01"), array("EXIST_CHECK")); 
    229         $objErr->doFunc(array("ÅÅÏÃÈÖ¹æ2", "deliv_tel02"), array("EXIST_CHECK")); 
    230         $objErr->doFunc(array("ÅÅÏÃÈÖ¹æ3", "deliv_tel03"), array("EXIST_CHECK")); 
    231     } 
    232      
    233     // Ê£¿ô¹àÌÜ¥Á¥§¥Ã¥¯ 
     219        $objErr->doFunc(array("お名前(姓)", "deliv_name01"), array("EXIST_CHECK")); 
     220        $objErr->doFunc(array("お名前(名)", "deliv_name02"), array("EXIST_CHECK")); 
     221        $objErr->doFunc(array("フリガナ(セイ)", "deliv_kana01"), array("EXIST_CHECK")); 
     222        $objErr->doFunc(array("フリガナ(メイ)", "deliv_kana02"), array("EXIST_CHECK")); 
     223        $objErr->doFunc(array("郵便番号1", "deliv_zip01"), array("EXIST_CHECK")); 
     224        $objErr->doFunc(array("郵便番号2", "deliv_zip02"), array("EXIST_CHECK")); 
     225        $objErr->doFunc(array("都道府県", "deliv_pref"), array("EXIST_CHECK")); 
     226        $objErr->doFunc(array("住所1", "deliv_addr01"), array("EXIST_CHECK")); 
     227        $objErr->doFunc(array("住所2", "deliv_addr02"), array("EXIST_CHECK")); 
     228        $objErr->doFunc(array("電話番号1", "deliv_tel01"), array("EXIST_CHECK")); 
     229        $objErr->doFunc(array("電話番号2", "deliv_tel02"), array("EXIST_CHECK")); 
     230        $objErr->doFunc(array("電話番号3", "deliv_tel03"), array("EXIST_CHECK")); 
     231    } 
     232     
     233    // 複数項目チェック 
    234234    $objErr->doFunc(array("TEL", "order_tel01", "order_tel02", "order_tel03", TEL_ITEM_LEN), array("TEL_CHECK")); 
    235235    $objErr->doFunc(array("FAX", "order_fax01", "order_fax02", "order_fax03", TEL_ITEM_LEN), array("TEL_CHECK")); 
    236     $objErr->doFunc(array("͹ÊØÈÖ¹æ", "order_zip01", "order_zip02"), array("ALL_EXIST_CHECK")); 
     236    $objErr->doFunc(array("郵便番号", "order_zip01", "order_zip02"), array("ALL_EXIST_CHECK")); 
    237237    $objErr->doFunc(array("TEL", "deliv_tel01", "deliv_tel02", "deliv_tel03", TEL_ITEM_LEN), array("TEL_CHECK")); 
    238238    $objErr->doFunc(array("FAX", "deliv_fax01", "deliv_fax02", "deliv_fax03", TEL_ITEM_LEN), array("TEL_CHECK")); 
    239     $objErr->doFunc(array("͹ÊØÈÖ¹æ", "deliv_zip01", "deliv_zip02"), array("ALL_EXIST_CHECK")); 
    240     $objErr->doFunc(array("À¸Ç¯·îÆü", "year", "month", "day"), array("CHECK_DATE")); 
    241     $objErr->doFunc(array("¥á¡¼¥ë¥¢¥É¥ì¥¹", "¥á¡¼¥ë¥¢¥É¥ì¥¹¡Ê³Îǧ¡Ë", "order_email", "order_email_check"), array("EQUAL_CHECK")); 
    242      
    243     // ¤¹¤Ç¤Ë¥á¥ë¥Þ¥¬¥Æ¡¼¥Ö¥ë¤Ë²ñ°÷¤È¤·¤Æ¥á¡¼¥ë¥¢¥É¥ì¥¹¤¬ÅÐÏ¿¤µ¤ì¤Æ¤¤¤ë¾ì¹ç 
     239    $objErr->doFunc(array("郵便番号", "deliv_zip01", "deliv_zip02"), array("ALL_EXIST_CHECK")); 
     240    $objErr->doFunc(array("生年月日", "year", "month", "day"), array("CHECK_DATE")); 
     241    $objErr->doFunc(array("メールアドレス", "メールアドレス(確認)", "order_email", "order_email_check"), array("EQUAL_CHECK")); 
     242     
     243    // すでにメルマガテーブルに会員としてメールアドレスが登録されている場合 
    244244    if(sfCheckCustomerMailMaga($arrRet['order_email'])) { 
    245         $objErr->arrErr['order_email'] = "¤³¤Î¥á¡¼¥ë¥¢¥É¥ì¥¹¤Ï¤¹¤Ç¤ËÅÐÏ¿¤µ¤ì¤Æ¤¤¤Þ¤¹¡£<br>"; 
     245        $objErr->arrErr['order_email'] = "このメールアドレスはすでに登録されています。<br>"; 
    246246    } 
    247247         
  • branches/feature-module-update/html/mobile/shopping/load_payment_module.php

    r12157 r15078  
    1313$objQuery = new SC_Query(); 
    1414 
    15 // Á°¤Î¥Ú¡¼¥¸¤ÇÀµ¤·¤¯ÅÐÏ¿¼ê³¤­¤¬¹Ô¤ï¤ì¤¿µ­Ï¿¤¬¤¢¤ë¤«È½Äê 
     15// 前のページで正しく登録手続きが行われた記録があるか判定 
    1616sfIsPrePage($objSiteSess, true); 
    1717 
    18 // ¥¢¥¯¥»¥¹¤ÎÀµÅöÀ­¤ÎȽÄê 
     18// アクセスの正当性の判定 
    1919$uniqid = sfCheckNormalAccess($objSiteSess, $objCartSess); 
    2020 
    2121$payment_id = $_SESSION["payment_id"]; 
    2222 
    23 // »Ùʧ¤¤ID¤¬Ìµ¤¤¾ì¹ç¤Ë¤Ï¥¨¥é¡¼ 
     23// 支払いIDが無い場合にはエラー 
    2424if($payment_id == ""){ 
    2525    sfDispSiteError(PAGE_ERROR, "", true, "", true); 
    2626} 
    2727 
    28 // ·èºÑ¾ðÊó¤ò¼èÆÀ¤¹¤ë 
     28// 決済情報を取得する 
    2929if(sfColumnExists("dtb_payment", "memo01")){ 
    3030    $sql = "SELECT module_path, memo01, memo02, memo03, memo04, memo05, memo06, memo07, memo08, memo09, memo10 FROM dtb_payment WHERE payment_id = ?"; 
     
    3838        exit; 
    3939    } else { 
    40         sfDispSiteError(FREE_ERROR_MSG, "", true, "¥â¥¸¥å¡¼¥ë¥Õ¥¡¥¤¥ë¤Î¼èÆÀ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿¡£<br />¤³¤Î¼ê³¤­¤Ï̵¸ú¤È¤Ê¤ê¤Þ¤·¤¿¡£", true); 
     40        sfDispSiteError(FREE_ERROR_MSG, "", true, "モジュールファイルの取得に失敗しました。<br />この手続きは無効となりました。", true); 
    4141    } 
    4242} 
  • branches/feature-module-update/html/mobile/shopping/payment.php

    r12157 r15078  
    1717        $this->tpl_mainpage = 'shopping/payment.tpl'; 
    1818        $this->tpl_onload = 'fnCheckInputPoint();'; 
    19         $this->tpl_title = "¤ª»ÙʧÊýË¡¤Î»ØÄê"; 
     19        $this->tpl_title = "お支払方法の指定"; 
    2020        /* 
    21          session_start»þ¤Îno-cache¥Ø¥Ã¥À¡¼¤òÍÞÀ©¤¹¤ë¤³¤È¤Ç 
    22          ¡ÖÌá¤ë¡×¥Ü¥¿¥ó»ÈÍÑ»þ¤ÎÍ­¸ú´ü¸ÂÀÚ¤ìɽ¼¨¤òÍÞÀ©¤¹¤ë¡£ 
    23          private-no-expire:¥¯¥é¥¤¥¢¥ó¥È¤Î¥­¥ã¥Ã¥·¥å¤òµö²Ä¤¹¤ë¡£ 
     21         session_start時のno-cacheヘッダーを抑制することで 
     22         「戻る」ボタン使用時の有効期限切れ表示を抑制する。 
     23         private-no-expire:クライアントのキャッシュを許可する。 
    2424        */ 
    2525        session_cache_limiter('private-no-expire');      
     
    3535$arrInfo = $objSiteInfo->data; 
    3636 
    37 // ¥Ñ¥é¥á¡¼¥¿´ÉÍý¥¯¥é¥¹ 
     37// パラメータ管理クラス 
    3838$objFormParam = new SC_FormParam(); 
    39 // ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ 
     39// パラメータ情報の初期化 
    4040lfInitParam(); 
    41 // POSTÃͤμèÆÀ 
     41// POST値の取得 
    4242$objFormParam->setParam($_POST); 
    4343 
    44 // ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ¤È¹ØÆþ¾õÂÖ¤ÎÀµÅöÀ­¤ò¥Á¥§¥Ã¥¯ 
     44// ユーザユニークIDの取得と購入状態の正当性をチェック 
    4545$uniqid = sfCheckNormalAccess($objSiteSess, $objCartSess); 
    46 // ¥æ¥Ë¡¼¥¯ID¤ò°ú¤­·Ñ¤° 
     46// ユニークIDを引き継ぐ 
    4747$objPage->tpl_uniqid = $uniqid; 
    4848 
    49 // ²ñ°÷¥í¥°¥¤¥ó¥Á¥§¥Ã¥¯ 
     49// 会員ログインチェック 
    5050if($objCustomer->isLoginSuccess()) { 
    5151    $objPage->tpl_login = '1'; 
     
    5353} 
    5454 
    55 // ¶â³Û¤Î¼èÆÀ (¹ØÆþÅÓÃæ¤ÇÇä¤êÀڤ줿¾ì¹ç¤Ë¤Ï¤³¤Î´Ø¿ôÆâ¤Ë¤Æ¤½¤Î¾¦ÉʤθĿô¤¬£°¤Ë¤Ê¤ë) 
     55// 金額の取得 (購入途中で売り切れた場合にはこの関数内にてその商品の個数が0になる) 
    5656$objPage = sfTotalCart($objPage, $objCartSess, $arrInfo); 
    5757$objPage->arrData = sfTotalConfirm($arrData, $objPage, $objCartSess, $arrInfo); 
    5858 
    59 // ¥«¡¼ÅÔÆâ¤Î¾¦ÉʤÎÇä¤êÀÚ¤ì¥Á¥§¥Ã¥¯ 
     59// カー都内の商品の売り切れチェック 
    6060$objCartSess->chkSoldOut($objCartSess->getCartList(), true); 
    6161 
    62 // Ìá¤ë¥Ü¥¿¥ó¤Î½èÍý 
     62// 戻るボタンの処理 
    6363if (!empty($_POST['return'])) { 
    6464    switch ($_POST['mode']) { 
     
    6767        break; 
    6868    default: 
    69         // Àµ¾ï¤Ê¿ä°Ü¤Ç¤¢¤ë¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯ 
     69        // 正常な推移であることを記録しておく 
    7070        $objSiteSess->setRegistFlag(); 
    7171        header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_TOP)); 
     
    7575 
    7676switch($_POST['mode']) { 
    77 // »Ùʧ¤¤ÊýË¡»ØÄê ¢ª ÇÛãÆü»þ»ØÄê 
     77// 支払い方法指定 → 配達日時指定 
    7878case 'deliv_date': 
    79     // ÆþÎÏÃͤÎÊÑ´¹ 
     79    // 入力値の変換 
    8080    $objFormParam->convParam(); 
    8181    $objPage->arrErr = lfCheckError($objPage->arrData); 
    8282    if (!isset($objPage->arrErr['payment_id'])) { 
    83         // »Ùʧ¤¤ÊýË¡¤ÎÆþÎÏ¥¨¥é¡¼¤Ê¤· 
     83        // 支払い方法の入力エラーなし 
    8484        $objPage->tpl_mainpage = 'shopping/deliv_date.tpl'; 
    85         $objPage->tpl_title = "ÇÛãÆü»þ»ØÄê"; 
     85        $objPage->tpl_title = "配達日時指定"; 
    8686        break; 
    8787    } else { 
    88         // ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ 
     88        // ユーザユニークIDの取得 
    8989        $uniqid = $objSiteSess->getUniqId(); 
    90         // ¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤«¤é¤Î¾ðÊó¤ò³ÊǼ 
     90        // 受注一時テーブルからの情報を格納 
    9191        lfSetOrderTempData($uniqid); 
    9292    } 
    9393    break; 
    9494case 'confirm': 
    95     // ÆþÎÏÃͤÎÊÑ´¹ 
     95    // 入力値の変換 
    9696    $objFormParam->convParam(); 
    9797    $objPage->arrErr = lfCheckError($objPage->arrData ); 
    98     // ÆþÎÏ¥¨¥é¡¼¤Ê¤· 
     98    // 入力エラーなし 
    9999    if(count($objPage->arrErr) == 0) { 
    100         // DB¤Ø¤Î¥Ç¡¼¥¿ÅÐÏ¿ 
     100        // DBへのデータ登録 
    101101        lfRegistData($uniqid); 
    102         // Àµ¾ï¤ËÅÐÏ¿¤µ¤ì¤¿¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯ 
     102        // 正常に登録されたことを記録しておく 
    103103        $objSiteSess->setRegistFlag(); 
    104         // ³Îǧ¥Ú¡¼¥¸¤Ø°ÜÆ° 
     104        // 確認ページへ移動 
    105105        header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_CONFIRM)); 
    106106        exit; 
    107107    }else{ 
    108         // ¥æ¡¼¥¶¥æ¥Ë¡¼¥¯ID¤Î¼èÆÀ 
     108        // ユーザユニークIDの取得 
    109109        $uniqid = $objSiteSess->getUniqId(); 
    110         // ¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤«¤é¤Î¾ðÊó¤ò³ÊǼ 
     110        // 受注一時テーブルからの情報を格納 
    111111        lfSetOrderTempData($uniqid); 
    112112        if (!isset($objPage->arrErr['payment_id'])) { 
    113             // »Ùʧ¤¤ÊýË¡¤ÎÆþÎÏ¥¨¥é¡¼¤Ê¤· 
     113            // 支払い方法の入力エラーなし 
    114114            $objPage->tpl_mainpage = 'shopping/deliv_date.tpl'; 
    115             $objPage->tpl_title = "ÇÛãÆü»þ»ØÄê"; 
    116         } 
    117     } 
    118     break; 
    119 // Á°¤Î¥Ú¡¼¥¸¤ËÌá¤ë 
     115            $objPage->tpl_title = "配達日時指定"; 
     116        } 
     117    } 
     118    break; 
     119// 前のページに戻る 
    120120case 'return': 
    121     // Èó²ñ°÷¤Î¾ì¹ç 
    122     // Àµ¾ï¤Ê¿ä°Ü¤Ç¤¢¤ë¤³¤È¤òµ­Ï¿¤·¤Æ¤ª¤¯ 
     121    // 非会員の場合 
     122    // 正常な推移であることを記録しておく 
    123123    $objSiteSess->setRegistFlag(); 
    124124    header("Location: " . gfAddSessionId(MOBILE_URL_SHOP_TOP)); 
    125125    exit; 
    126126    break; 
    127 // »Ùʧ¤¤ÊýË¡¤¬Êѹ¹¤µ¤ì¤¿¾ì¹ç 
     127// 支払い方法が変更された場合 
    128128case 'payment': 
    129     // ¤³¤³¤Îbreak¤Ï¡¢°ÕÌ£¤¬¤¢¤ë¤Î¤Ç³°¤µ¤Ê¤¤¤Ç²¼¤µ¤¤¡£ 
     129    // ここのbreakは、意味があるので外さないで下さい。 
    130130    break; 
    131131default: 
    132     // ¼õÃí°ì»þ¥Æ¡¼¥Ö¥ë¤«¤é¤Î¾ðÊó¤ò³ÊǼ 
     132    // 受注一時テーブルからの情報を格納 
    133133    lfSetOrderTempData($uniqid); 
    134134    break; 
    135135} 
    136136 
    137 // ŹÊÞ¾ðÊó¤Î¼èÆÀ 
     137// 店舗情報の取得 
    138138$arrInfo = $objSiteInfo->data; 
    139 // ¹ØÆþ¶â³Û¤Î¼èÆÀÆÀ 
     139// 購入金額の取得得 
    140140$total_pretax = $objCartSess->getAllProductsTotal($arrInfo); 
    141 // »Ùʧ¤¤ÊýË¡¤Î¼èÆÀ 
     141// 支払い方法の取得 
    142142$objPage->arrPayment = lfGetPayment($total_pretax); 
    143 // ÇÛÁ÷»þ´Ö¤Î¼èÆÀ 
     143// 配送時間の取得 
    144144$arrRet = sfGetDelivTime($objFormParam->getValue('payment_id')); 
    145145$objPage->arrDelivTime = sfArrKeyValue($arrRet, 'time_id', 'deliv_time'); 
    146146$objPage->objCustomer = $objCustomer; 
    147 //¡¡ÇÛÁ÷Æü°ìÍ÷¤Î¼èÆÀ 
     147// 配送日一覧の取得 
    148148$objPage->arrDelivDate = lfGetDelivDate(); 
    149149 
     
    153153$objView->display(SITE_FRAME); 
    154154//-------------------------------------------------------------------------------------------------------------------------- 
    155 /* ¥Ñ¥é¥á¡¼¥¿¾ðÊó¤Î½é´ü²½ */ 
     155/* パラメータ情報の初期化 */ 
    156156function lfInitParam() { 
    157157    global $objFormParam; 
    158     $objFormParam->addParam("¤ª»Ùʧ¤¤ÊýË¡", "payment_id", INT_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK")); 
    159     $objFormParam->addParam("¥Ý¥¤¥ó¥È", "use_point", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK", "ZERO_START")); 
    160     $objFormParam->addParam("ÇÛã»þ´Ö", "deliv_time_id", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
    161     $objFormParam->addParam("¤´¼ÁÌä", "message", LTEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
    162     $objFormParam->addParam("¥Ý¥¤¥ó¥È¤ò»ÈÍѤ¹¤ë", "point_check", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"), '2'); 
    163     $objFormParam->addParam("ÇÛãÆü", "deliv_date", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK")); 
     158    $objFormParam->addParam("お支払い方法", "payment_id", INT_LEN, "n", array("EXIST_CHECK", "MAX_LENGTH_CHECK", "NUM_CHECK")); 
     159    $objFormParam->addParam("ポイント", "use_point", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK", "ZERO_START")); 
     160    $objFormParam->addParam("配達時間", "deliv_time_id", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK")); 
     161    $objFormParam->addParam("ご質問", "message", LTEXT_LEN, "KVa", array("SPTAB_CHECK", "MAX_LENGTH_CHECK")); 
     162    $objFormParam->addParam("ポイントを使用する", "point_check", INT_LEN, "n", array("MAX_LENGTH_CHECK", "NUM_CHECK"), '2'); 
     163    $objFormParam->addParam("配達日", "deliv_date", STEXT_LEN, "KVa", array("MAX_LENGTH_CHECK")); 
    164164} 
    165165 
     
    167167    $objQuery = new SC_Query(); 
    168168    $objQuery->setorder("rank DESC"); 
    169     //ºï½ü¤µ¤ì¤Æ¤¤¤Ê¤¤»ÙʧÊýË¡¤ò¼èÆÀ 
     169    //削除されていない支払方法を取得 
    170170    $arrRet = $objQuery->select("payment_id, payment_method, rule, upper_rule, note, payment_image", "dtb_payment", "del_flg = 0 AND deliv_id IN (SELECT deliv_id FROM dtb_deliv WHERE del_flg = 0) "); 
    171     //ÍøÍѾò·ï¤«¤é»Ùʧ²ÄǽÊýË¡¤òȽÄê 
     171    //利用条件から支払可能方法を判定 
    172172    foreach($arrRet as $data) { 
    173         //²¼¸Â¤È¾å¸Â¤¬ÀßÄꤵ¤ì¤Æ¤¤¤ë 
     173        //下限と上限が設定されている 
    174174        if($data['rule'] > 0 && $data['upper_rule'] > 0) { 
    175175            if($data['rule'] <= $total_pretax && $data['upper_rule'] >= $total_pretax) { 
    176176                $arrPayment[] = $data; 
    177177            } 
    178         //²¼¸Â¤Î¤ßÀßÄꤵ¤ì¤Æ¤¤¤ë 
     178        //下限のみ設定されている 
    179179        } elseif($data['rule'] > 0) {    
    180180            if($data['rule'] <= $total_pretax) { 
    181181                $arrPayment[] = $data; 
    182182            } 
    183         //¾å¸Â¤Î¤ßÀßÄꤵ¤ì¤Æ¤¤¤ë 
     183        //上限のみ設定されている 
    184184        } elseif($data['upper_rule'] > 0) { 
    185185            if($data['upper_rule'] >= $total_pretax) { 
    186186                $arrPayment[] = $data; 
    187187            } 
    188         //ÀßÄê¤Ê¤· 
     188        //設定なし 
    189189        } else { 
    190190            $arrPayment[] = $data; 
     
    194194} 
    195195 
    196 /* ÆþÎÏÆâÍƤΥÁ¥§¥Ã¥¯ */ 
     196/* 入力内容のチェック */ 
    197197function lfCheckError($arrData) { 
    198198    global $objFormParam; 
    199199    global $objCustomer; 
    200     // ÆþÎϥǡ¼¥¿¤òÅϤ¹¡£ 
     200    // 入力データを渡す。 
    201201    $arrRet =  $objFormParam->getHashArray(); 
    202202    $objErr = new SC_CheckError($arrRet); 
     
    204204     
    205205    if($_POST['point_check'] == '1') { 
    206         $objErr->doFunc(array("¥Ý¥¤¥ó¥È¤ò»ÈÍѤ¹¤ë", "point_check"), array("EXIST_CHECK")); 
    207         $objErr->doFunc(array("¥Ý¥¤¥ó¥È", "use_point"), array("EXIST_CHECK")); 
     206        $objErr->doFunc(array("ポイントを使用する", "point_check"), array("EXIST_CHECK")); 
     207        $objErr->doFunc(array("ポイント", "use_point"), array("EXIST_CHECK")); 
    208208        $max_point = $objCustomer->getValue('point'); 
    209209        if($max_point == "") { 
     
    211211        } 
    212212        if($arrRet['use_point'] > $max_point) { 
    213             $objErr->arrErr['use_point'] = "¢¨ ¤´ÍøÍѥݥ¤¥ó¥È¤¬½ê»ý¥Ý¥¤¥ó¥È¤òĶ¤¨¤Æ¤¤¤Þ¤¹¡£<br>"; 
     213            $objErr->arrErr['use_point'] = "※ ご利用ポイントが所持ポイントを超えています。<br>"; 
    214214        } 
    215215        if(($arrRet['use_point'] * POINT_VALUE) > $arrData['subtotal']) { 
    216             $objErr->arrErr['use_point'] = "¢¨ ¤´ÍøÍѥݥ¤¥ó¥È¤¬¤´¹ØÆþ¶â³Û¤òĶ¤¨¤Æ¤¤¤Þ¤¹¡£<br>"; 
     216            $objErr->arrErr['use_point'] = "※ ご利用ポイントがご購入金額を超えています。<br>"; 
    217217        } 
    218218    } 
     
    220220} 
    221221 
    222 /* »Ùʧ¤¤Êýˡʸ»úÎó¤Î¼èÆÀ */ 
     222/* 支払い方法文字列の取得 */ 
    223223function lfGetPaymentInfo($payment_id) { 
    224224    $objQuery = new SC_Query(); 
     
    228228} 
    229229 
    230 /* ÇÛÁ÷»þ´Öʸ»úÎó¤Î¼èÆÀ */ 
     230/* 配送時間文字列の取得 */ 
    231231function lfGetDelivTimeInfo($time_id) { 
    232232    $objQuery = new SC_Query(); 
     
    236236} 
    237237 
    238 /* DB¤Ø¥Ç¡¼¥¿¤ÎÅÐÏ¿ */ 
     238/* DBへデータの登録 */ 
    239239function lfRegistData($uniqid) { 
    240240    global $objFormParam; 
    241241    $arrRet = $objFormParam->getHashArray(); 
    242242    $sqlval = $objFormParam->getDbArray(); 
    243     // ÅÐÏ¿¥Ç¡¼¥¿¤ÎºîÀ® 
     243    // 登録データの作成 
    244244    $sqlval['order_temp_id'] = $uniqid; 
    245245    $sqlval['update_date'] = 'Now()'; 
     
    260260    } 
    261261     
    262     // »ÈÍѥݥ¤¥ó¥È¤ÎÀßÄê 
     262    // 使用ポイントの設定 
    263263    if($sqlval['point_check'] != '1') { 
    264264        $sqlval['use_point'] = 0; 
     
    268268} 
    269269 
    270 /* ÇÛãÆü°ìÍ÷¤ò¼èÆÀ¤¹¤ë */ 
     270/* 配達日一覧を取得する */ 
    271271function lfGetDelivDate() { 
    272272    $objCartSess = new SC_CartSession(); 
    273273    $objQuery = new SC_Query(); 
    274     // ¾¦ÉÊID¤Î¼èÆÀ 
     274    // 商品IDの取得 
    275275    $max = $objCartSess->getMax(); 
    276276    for($i = 1; $i <= $max; $i++) { 
     
    281281    if(count($arrID['product_id']) > 0) { 
    282282        $id = implode(",", $arrID['product_id']); 
    283         //¾¦Éʤ«¤éȯÁ÷Ìܰ¤μèÆÀ 
     283        //商品から発送目安の取得 
    284284        $deliv_date = $objQuery->get("dtb_products", "MAX(deliv_date_id)", "product_id IN (".$id.")"); 
    285         //ȯÁ÷Ìܰ 
     285        //発送目安 
    286286        switch($deliv_date) { 
    287         //¨ÆüȯÁ÷ 
     287        //即日発送 
    288288        case '1': 
    289289            $start_day = 1; 
    290290            break; 
    291         //1-2Æü¸å 
     291        //1-2日後 
    292292        case '2': 
    293293            $start_day = 3; 
    294294            break; 
    295         //3-4Æü¸å 
     295        //3-4日後 
    296296        case '3': 
    297297            $start_day = 5; 
    298298            break; 
    299         //1½µ´Ö°ÊÆâ 
     299        //1週間以内 
    300300        case '4': 
    301301            $start_day = 8; 
    302302            break; 
    303         //2½µ´Ö°ÊÆâ 
     303        //2週間以内 
    304304        case '5': 
    305305            $start_day = 15; 
    306306            break; 
    307         //3½µ´Ö°ÊÆâ 
     307        //3週間以内 
    308308        case '6': 
    309309            $start_day = 22; 
    310310            break; 
    311         //1¥ö·î°ÊÆâ 
     311        //1ヶ月以内 
    312312        case '7': 
    313313            $start_day = 32; 
    314314            break; 
    315         //2¥ö·î°Ê¹ß 
     315        //2ヶ月以降 
    316316        case '8': 
    317317            $start_day = 62;             
    318318            break; 
    319         //¤ª¼è¤ê´ó¤»(¾¦ÉÊÆþ²Ù¸å) 
     319        //お取り寄せ(商品入荷後) 
    320320        case '9': 
    321321            $start_day = ""; 
    322322            break; 
    323323        default: 
    324             //¤ªÆϤ±Æü¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¾ì¹ç 
     324            //お届け日が設定されていない場合 
    325325            $start_day = ""; 
    326326            break; 
    327327        } 
    328         //ÇÛã²ÄǽÆü¤Î¥¹¥¿¡¼¥ÈÃͤ«¤é¡¢ÇÛãÆü¤ÎÇÛÎó¤ò¼èÆÀ¤¹¤ë 
     328        //配達可能日のスタート値から、配達日の配列を取得する 
    329329        $arrDelivDate = lfGetDateArray($start_day, DELIV_DATE_END_MAX); 
    330330    } 
     
    332332} 
    333333 
    334 //ÇÛã²ÄǽÆü¤Î¥¹¥¿¡¼¥ÈÃͤ«¤é¡¢ÇÛãÆü¤ÎÇÛÎó¤ò¼èÆÀ¤¹¤ë 
     334//配達可能日のスタート値から、配達日の配列を取得する 
    335335function lfGetDateArray($start_day, $end_day) { 
    336336    global $arrWDAY; 
    337     //ÇÛã²ÄǽÆü¤Î¥¹¥¿¡¼¥ÈÃͤ¬¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤ì¤Ð 
     337    //配達可能日のスタート値がセットされていれば 
    338338    if($start_day >= 1) { 
    339339        $now_time = time(); 
    340340        $max_day = $start_day + $end_day; 
    341         // ½¸·× 
     341        // 集計 
    342342        for ($i = $start_day; $i < $max_day; $i++) { 
    343             // ´ðËÜ»þ´Ö¤«¤éÆü¿ô¤òÄɲ䷤Ƥ¤¤¯ 
     343            // 基本時間から日数を追加していく 
    344344            $tmp_time = $now_time + ($i * 24 * 3600); 
    345345            list($y, $m, $d, $w) = split(" ", date("y m d w", $tmp_time));   
     
    353353} 
    354354 
    355 //°ì»þ¼õÃí¥Æ¡¼¥Ö¥ë¤«¤é¤Î¾ðÊó¤ò³ÊǼ¤¹¤ë 
     355//一時受注テーブルからの情報を格納する 
    356356function lfSetOrderTempData($uniqid) { 
    357357    global $objQuery; 
     
    363363    $where = "order_temp_id = ?"; 
    364364    $arrRet = $objQuery->select($col, $from, $where, array($uniqid)); 
    365     // DBÃͤμèÆÀ 
     365    // DB値の取得 
    366366    $objFormParam->setParam($arrRet[0]); 
    367367    return $objFormParam; 
Note: See TracChangeset for help on using the changeset viewer.