質問 > フロント機能 > LC_Page_Admin_Products_Product.phpのfunctionをLC_Page_FrontParts_Bloc_New_Products.phpで起動することは可能でしょうか。 |
フロント機能
フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
aozora |
投稿日時: 2013/4/9 20:50
対応状況: −−−
|
常連 登録日: 2013/3/21 居住地: 投稿: 40 |
Re: LC_Page_Admin_Products_Product.phpのfunctionをLC_Page_FrontParts_Bloc_New_Products.phpで起動することは可能でしょうか。 yuh様、
いつもお世話になっております。ご返信頂きましてありがとうございます。 LC_Page_Admin_Products_Product.phpに以下の?のfunctionの記述があります。管理者画面から商品を登録する際に商品データを入力後、”確認ページへ”をクリックし、確認ページから”この内容で登録する”をクリックするとDBに商品データを登録するfunctionだと思いますが、その中に function lfInsertDummyProductClassというfunctionがあり、その中で割引率と商品価格を掛け合わせてDBに保存するという以下の?の作業をしておりました。 この?の作業、厳密には?の作業を新着商品ブロックを開いたときには常に起動させるようにLC_Page_FrontParts_Bloc_New_Products.phpで呼び起こせないものかと思い質問させて頂きました。 ? $rate1 = $objQuery->getCol('value', 'dtb_discount', 'discount_id = ?', array('1')); $rate2 = $objQuery->getCol('value', 'dtb_discount', 'discount_id = ?', array('2')); $rate3 = $objQuery->getCol('value', 'dtb_discount', 'discount_id = ?', array('3')); $sqlval['price03'] = $sqlval['price02'] * $rate1[0]; $sqlval['price04'] = $sqlval['price02'] * $rate2[0]; $sqlval['price05'] = $sqlval['price02'] * $rate3[0]; $arrForm['rate1'] = $rate1[0]; ? /** * DBに商品データを登録する * * @param object $objUpFile SC_UploadFileインスタンス * @param object $objDownFile SC_UploadFileインスタンス * @param array $arrList フォーム入力パラメーター配列 * @return integer 登録商品ID */ function lfRegistProduct(&$objUpFile, &$objDownFile, $arrList) { > > > > /** * 規格を設定していない商品を商品規格テーブルに登録 * * @param array $arrList * @return void */ function lfInsertDummyProductClass($arrList) { $objQuery =& SC_Query_Ex::getSingletonInstance(); $objDb = new SC_Helper_DB_Ex(); // 配列の添字を定義 $checkArray = array('product_class_id', 'product_id', 'product_code', 'stock', 'stock_unlimited', 'price01', 'price02', 'price03', 'sale_limit', 'deliv_fee', 'point_rate' ,'product_type_id', 'down_filename', 'down_realfilename'); $sqlval = SC_Utils_Ex::sfArrayIntersectKeys($arrList, $checkArray); $sqlval = SC_Utils_Ex::arrayDefineIndexes($sqlval, $checkArray); $sqlval['stock_unlimited'] = $sqlval['stock_unlimited'] ? UNLIMITED_FLG_UNLIMITED : UNLIMITED_FLG_LIMITED; $sqlval['creator_id'] = strlen($_SESSION['member_id']) >= 1 ? $_SESSION['member_id'] : '0'; $rate1 = $objQuery->getCol('value', 'dtb_discount', 'discount_id = ?', array('1')); $rate2 = $objQuery->getCol('value', 'dtb_discount', 'discount_id = ?', array('2')); $rate3 = $objQuery->getCol('value', 'dtb_discount', 'discount_id = ?', array('3')); $sqlval['price03'] = $sqlval['price02'] * $rate1[0]; $sqlval['price04'] = $sqlval['price02'] * $rate2[0]; $sqlval['price05'] = $sqlval['price02'] * $rate3[0]; $arrForm['rate1'] = $rate1[0]; if (strlen($sqlval['product_class_id']) == 0) { $sqlval['product_class_id'] = $objQuery->nextVal('dtb_products_class_product_class_id'); $sqlval['create_date'] = 'CURRENT_TIMESTAMP'; $sqlval['update_date'] = 'CURRENT_TIMESTAMP'; // INSERTの実行 $objQuery->insert('dtb_products_class', $sqlval); } else { $sqlval['update_date'] = 'CURRENT_TIMESTAMP'; // UPDATEの実行 $objQuery->update('dtb_products_class', $sqlval, 'product_class_id = ?', array($sqlval['product_class_id'])); } } > > > > |
フラット表示 | 前のトピック | 次のトピック |