当前位置: 首页>>代码示例>>PHP>>正文


PHP SC_Helper_DB_Ex::sfCategory_Count方法代码示例

本文整理汇总了PHP中SC_Helper_DB_Ex::sfCategory_Count方法的典型用法代码示例。如果您正苦于以下问题:PHP SC_Helper_DB_Ex::sfCategory_Count方法的具体用法?PHP SC_Helper_DB_Ex::sfCategory_Count怎么用?PHP SC_Helper_DB_Ex::sfCategory_Count使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SC_Helper_DB_Ex的用法示例。


在下文中一共展示了SC_Helper_DB_Ex::sfCategory_Count方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: process

 /**
  * Page のプロセス.
  *
  * @return void
  */
 function process()
 {
     $objView = new SC_AdminView();
     $objSiteInfo = new SC_SiteInfo();
     $objQuery = new SC_Query();
     $objDb = new SC_Helper_DB_Ex();
     // 認証可否の判定
     $objSess = new SC_Session();
     SC_Utils_Ex::sfIsSuccess($objSess);
     // ファイル管理クラス
     $this->objUpFile = new SC_UploadFile(IMAGE_TEMP_DIR, IMAGE_SAVE_DIR);
     // ファイル情報の初期化
     $this->lfInitFile();
     // Hiddenからのデータを引き継ぐ
     $this->objUpFile->setHiddenFileList($_POST);
     // 規格の有り無し判定
     $this->tpl_nonclass = $this->lfCheckNonClass($_POST['product_id']);
     // 検索パラメータの引き継ぎ
     foreach ($_POST as $key => $val) {
         if (ereg("^search_", $key)) {
             $this->arrSearchHidden[$key] = $val;
         }
     }
     // FORMデータの引き継ぎ
     $this->arrForm = $_POST;
     if (!isset($_POST['mode'])) {
         $_POST['mode'] = "";
     }
     switch ($_POST['mode']) {
         // 検索画面からの編集
         case 'pre_edit':
         case 'copy':
             // 編集時
             if (SC_Utils_Ex::sfIsInt($_POST['product_id'])) {
                 // DBから商品情報の読込
                 $arrForm = $this->lfGetProduct($_POST['product_id']);
                 // DBデータから画像ファイル名の読込
                 $this->objUpFile->setDBFileList($arrForm);
                 if ($_POST['mode'] == "copy") {
                     $arrForm["copy_product_id"] = $arrForm["product_id"];
                     $arrForm["product_id"] = "";
                     // 画像ファイルのコピー
                     $arrKey = $this->objUpFile->keyname;
                     $arrSaveFile = $this->objUpFile->save_file;
                     foreach ($arrSaveFile as $key => $val) {
                         $this->lfMakeScaleImage($arrKey[$key], $arrKey[$key], true);
                     }
                 }
                 $this->arrForm = $arrForm;
                 // 商品ステータスの変換
                 $arrRet = SC_Utils_Ex::sfSplitCBValue($this->arrForm['product_flag'], "product_flag");
                 $this->arrForm = array_merge($this->arrForm, $arrRet);
                 // DBからおすすめ商品の読み込み
                 $this->arrRecommend = $this->lfPreGetRecommendProducts($_POST['product_id']);
                 $this->lfProductPage();
                 // 商品登録ページ
             }
             break;
             // 商品登録・編集
         // 商品登録・編集
         case 'edit':
             if ($_POST['product_id'] == "" and SC_Utils_Ex::sfIsInt($_POST['copy_product_id'])) {
                 $this->tpl_nonclass = $this->lfCheckNonClass($_POST['copy_product_id']);
             }
             // 入力値の変換
             $this->arrForm = $this->lfConvertParam($this->arrForm);
             // エラーチェック
             $this->arrErr = $this->lfErrorCheck($this->arrForm);
             // ファイル存在チェック
             $this->arrErr = array_merge((array) $this->arrErr, (array) $this->objUpFile->checkEXISTS());
             // エラーなしの場合
             if (count($this->arrErr) == 0) {
                 $this->lfProductConfirmPage();
                 // 確認ページ
             } else {
                 $this->lfProductPage();
                 // 商品登録ページ
             }
             break;
             // 確認ページから完了ページへ
         // 確認ページから完了ページへ
         case 'complete':
             $this->tpl_mainpage = 'products/complete.tpl';
             $this->arrForm['product_id'] = $this->lfRegistProduct($_POST);
             // データ登録
             // 件数カウントバッチ実行
             $objDb->sfCategory_Count($objQuery);
             // 一時ファイルを本番ディレクトリに移動する
             $this->objUpFile->moveTempFile();
             break;
             // 画像のアップロード
         // 画像のアップロード
         case 'upload_image':
             // ファイル存在チェック
             $this->arrErr = array_merge((array) $this->arrErr, (array) $this->objUpFile->checkEXISTS($_POST['image_key']));
//.........这里部分代码省略.........
开发者ID:RyotaKaji,项目名称:eccube-2.4.1,代码行数:101,代码来源:LC_Page_Admin_Products_Product.php

示例2: process


//.........这里部分代码省略.........
         $_POST['mode'] = "";
     }
     switch ($_POST['mode']) {
         case 'csv_upload':
             $err = false;
             // エラーチェック
             $arrErr['csv_file'] = $this->objUpFile->makeTempFile('csv_file');
             if ($arrErr['css_file'] == "") {
                 $arrErr = $this->objUpFile->checkEXISTS();
             }
             // 実行時間を制限しない
             set_time_limit(0);
             // 出力をバッファリングしない(==日本語自動変換もしない)
             ob_end_clean();
             // IEのために256バイト空文字出力
             echo str_pad('', 256);
             if (empty($arrErr['csv_file'])) {
                 // 一時ファイル名の取得
                 $filepath = $this->objUpFile->getTempFilePath('csv_file');
                 // エンコード
                 $enc_filepath = SC_Utils_Ex::sfEncodeFile($filepath, CHAR_CODE, CSV_TEMP_DIR);
                 // レコード数を得る
                 $rec_count = $this->lfCSVRecordCount($enc_filepath);
                 $fp = fopen($enc_filepath, "r");
                 $line = 0;
                 // 行数
                 $regist = 0;
                 // 登録数
                 $objQuery = new SC_Query();
                 $objQuery->begin();
                 echo "■ CSV登録進捗状況 <br/><br/>\n";
                 while (!feof($fp) && !$err) {
                     $arrCSV = fgetcsv($fp, CSV_LINE_MAX);
                     // 行カウント
                     $line++;
                     if ($line <= 1) {
                         continue;
                     }
                     // 項目数カウント
                     $max = count($arrCSV);
                     // 項目数が1以下の場合は無視する
                     if ($max <= 1) {
                         continue;
                     }
                     // 項目数チェック
                     if ($max != $colmax) {
                         echo "※ 項目数が" . $max . "個検出されました。項目数は" . $colmax . "個になります。</br>\n";
                         $err = true;
                     } else {
                         // シーケンス配列を格納する。
                         $this->objFormParam->setParam($arrCSV, true);
                         $arrRet = $this->objFormParam->getHashArray();
                         $this->objFormParam->setParam($arrRet);
                         // 入力値の変換
                         $this->objFormParam->convParam();
                         // <br>なしでエラー取得する。
                         $arrCSVErr = $this->lfCheckError();
                     }
                     // 入力エラーチェック
                     if (count($arrCSVErr) > 0) {
                         echo "<font color=\"red\">■" . $line . "行目でエラーが発生しました。</font></br>\n";
                         foreach ($arrCSVErr as $val) {
                             $this->printError($val);
                         }
                         $err = true;
                     }
                     if (!$err) {
                         $this->lfRegistProduct($objQuery, $line);
                         $regist++;
                     }
                     $arrParam = $this->objFormParam->getHashArray();
                     if (!$err) {
                         echo $line . " / " . $rec_count . "行目 (カテゴリID:" . $arrParam['category_id'] . " / カテゴリ名:" . $arrParam['category_name'] . ")\n<br />";
                     }
                     flush();
                 }
                 fclose($fp);
                 if (!$err) {
                     $objQuery->commit();
                     echo "■" . $regist . "件のレコードを登録しました。";
                     // カテゴリ件数カウント関数の実行
                     $objDb->sfCategory_Count($objQuery);
                 } else {
                     $objQuery->rollback();
                 }
             } else {
                 foreach ($arrErr as $val) {
                     $this->printError($val);
                 }
             }
             echo "<br/><a href=\"javascript:window.close()\">→閉じる</a>";
             flush();
             exit;
             break;
         default:
             break;
     }
     $objView->assignobj($this);
     $objView->display(MAIN_FRAME);
 }
开发者ID:khrisna,项目名称:eccubedrm,代码行数:101,代码来源:LC_Page_Admin_Products_UploadCSVCategory.php

示例3: process

 /**
  * Page のプロセス.
  *
  * @return void
  */
 function process()
 {
     $objView = new SC_AdminView();
     $objDb = new SC_Helper_DB_Ex();
     $objDate = new SC_Date();
     // 登録・更新検索開始年
     $objDate->setStartYear(RELEASE_YEAR);
     $objDate->setEndYear(DATE("Y"));
     $this->arrStartYear = $objDate->getYear();
     $this->arrStartMonth = $objDate->getMonth();
     $this->arrStartDay = $objDate->getDay();
     // 登録・更新検索終了年
     $objDate->setStartYear(RELEASE_YEAR);
     $objDate->setEndYear(DATE("Y"));
     $this->arrEndYear = $objDate->getYear();
     $this->arrEndMonth = $objDate->getMonth();
     $this->arrEndDay = $objDate->getDay();
     // 認証可否の判定
     $objSess = new SC_Session();
     SC_Utils_Ex::sfIsSuccess($objSess);
     if (!isset($_POST['mode'])) {
         $_POST['mode'] = "";
     }
     //キャンペーンの編集時
     if (isset($_POST['campaign_id']) && SC_Utils_Ex::sfIsInt($_POST['campaign_id']) && $_POST['mode'] == "camp_search") {
         $objQuery = new SC_Query();
         $search_data = $objQuery->get("dtb_campaign", "search_condition", "campaign_id = ? ", array($_POST['campaign_id']));
         $arrSearch = unserialize($search_data);
         foreach ($arrSearch as $key => $val) {
             $_POST[$key] = $val;
         }
     }
     // POST値の引き継ぎ
     $this->arrForm = $_POST;
     // 検索ワードの引き継ぎ
     foreach ($_POST as $key => $val) {
         if (ereg("^search_", $key) || ereg("^campaign_", $key)) {
             switch ($key) {
                 case 'search_product_flag':
                 case 'search_status':
                     $this->arrHidden[$key] = SC_Utils_Ex::sfMergeParamCheckBoxes($val);
                     if (!is_array($val)) {
                         $this->arrForm[$key] = split("-", $val);
                     }
                     break;
                 default:
                     $this->arrHidden[$key] = $val;
                     break;
             }
         }
     }
     // ページ送り用
     $this->arrHidden['search_pageno'] = isset($_POST['search_pageno']) ? $_POST['search_pageno'] : "";
     // 商品削除
     if ($_POST['mode'] == "delete") {
         if ($_POST['category_id'] != "") {
             // ランク付きレコードの削除
             $where = "category_id = " . SC_Utils_Ex::sfQuoteSmart($_POST['category_id']);
             $objDb->sfDeleteRankRecord("dtb_products", "product_id", $_POST['product_id'], $where);
         } else {
             $objDb->sfDeleteRankRecord("dtb_products", "product_id", $_POST['product_id']);
         }
         // 子テーブル(商品規格)の削除
         $objQuery = new SC_Query();
         $objQuery->delete("dtb_products_class", "product_id = ?", array($_POST['product_id']));
         // 件数カウントバッチ実行
         $objDb->sfCategory_Count($objQuery);
     }
     if ($_POST['mode'] == "search" || $_POST['mode'] == "csv" || $_POST['mode'] == "delete" || $_POST['mode'] == "delete_all" || $_POST['mode'] == "camp_search") {
         // 入力文字の強制変換
         $this->lfConvertParam();
         // エラーチェック
         $this->arrErr = $this->lfCheckError();
         $where = "del_flg = 0";
         $view_where = "del_flg = 0";
         // 入力エラーなし
         if (count($this->arrErr) == 0) {
             $arrval = array();
             foreach ($this->arrForm as $key => $val) {
                 $val = SC_Utils_Ex::sfManualEscape($val);
                 if ($val == "") {
                     continue;
                 }
                 switch ($key) {
                     case 'search_product_id':
                         // 商品ID
                         $where .= " AND product_id = ?";
                         $view_where .= " AND product_id = ?";
                         $arrval[] = $val;
                         break;
                     case 'search_product_class_name':
                         //規格名称
                         $where_in = " (SELECT classcategory_id FROM dtb_classcategory WHERE class_id IN (SELECT class_id FROM dtb_class WHERE name LIKE ?)) ";
                         $where .= " AND product_id IN (SELECT product_id FROM dtb_products_class WHERE classcategory_id1 IN " . $where_in;
                         $where .= " OR classcategory_id2 IN" . $where_in . ")";
//.........这里部分代码省略.........
开发者ID:khrisna,项目名称:eccubedrm,代码行数:101,代码来源:LC_Page_Admin_Products.php


注:本文中的SC_Helper_DB_Ex::sfCategory_Count方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。