/** * @param $version マイグレーションバージョン */ public function markApplied($version) { $values = array($this->systemColumn => $this->system, $this->versionColumn => $version); $result = $this->query->insert($this->versionTable, $values); if (PEAR::isError($result)) { throw new Zeclib_MigrationException($result->getMessage(), $result->getCode()); } }
function sfSaveMailHistory($order_id, $template_id, $subject, $body) { $sqlval['subject'] = $subject; $sqlval['order_id'] = $order_id; $sqlval['template_id'] = $template_id; $sqlval['send_date'] = 'CURRENT_TIMESTAMP'; if (!isset($_SESSION['member_id'])) { $_SESSION['member_id'] = ""; } if ($_SESSION['member_id'] != "") { $sqlval['creator_id'] = $_SESSION['member_id']; } else { $sqlval['creator_id'] = '0'; } $sqlval['mail_body'] = $body; $objQuery = new SC_Query_Ex(); $sqlval['send_id'] = $objQuery->nextVal("dtb_mail_history_send_id"); $objQuery->insert("dtb_mail_history", $sqlval); }
/** * セッションのデータをDBに書き込む. * * @param string $id セッションID * @param string $sess_data セッションデータの値 * @return bool セッションの書き込みに成功した場合 true */ function sfSessWrite($id, $sess_data) { $objQuery = new SC_Query_Ex(); $count = $objQuery->count("dtb_session", "sess_id = ?", array($id)); $sqlval = array(); if ($count > 0) { // レコード更新 $sqlval['sess_data'] = $sess_data; $sqlval['update_date'] = 'CURRENT_TIMESTAMP'; $objQuery->update("dtb_session", $sqlval, "sess_id = ?", array($id)); } else { // セッションデータがある場合は、レコード作成 if (strlen($sess_data) > 0) { $sqlval['sess_id'] = $id; $sqlval['sess_data'] = $sess_data; $sqlval['update_date'] = 'CURRENT_TIMESTAMP'; $sqlval['create_date'] = 'CURRENT_TIMESTAMP'; $objQuery->insert("dtb_session", $sqlval); } } return true; }
/** * 外部サイト連携用にセッションIDとパラメーターの組み合わせを保存する。 * * @param string $param_key パラメーター名 * @param string $param_value パラメーター値 * @param string $url URL * @return void */ function sfMobileSetExtSessionId($param_key, $param_value, $url) { $objQuery = new SC_Query_Ex(); // GC $time = date('Y-m-d H:i:s', time() - MOBILE_SESSION_LIFETIME); $objQuery->delete('dtb_mobile_ext_session_id', 'create_date < ?', array($time)); $arrValues = array('session_id' => session_id(), 'param_key' => $param_key, 'param_value' => $param_value, 'url' => $url); $objQuery->insert('dtb_mobile_ext_session_id', $arrValues); }
/** * 外部サイト連携用にセッションIDとパラメーターの組み合わせを保存する。 * * @param string $param_key パラメーター名 * @param string $param_value パラメーター値 * @param string $url URL * @return void */ function setExtSessionId($param_key, $param_value, $url) { $objQuery = new SC_Query_Ex(); // GC $lifetime = $this->state->getLifeTime(); $time = date('Y-m-d H:i:s', time() - $lifetime); $objQuery->delete('dtb_mobile_ext_session_id', 'create_date < ?', array($time)); $arrValues = array('session_id' => session_id(), 'param_key' => $param_key, 'param_value' => $param_value, 'url' => $url); $objQuery->insert('dtb_mobile_ext_session_id', $arrValues); }
function registerUpdateLog($arrLog, $objRet) { $objQuery = new SC_Query_Ex(); $arrInsert = array('log_id' => $objQuery->nextVal('dtb_module_update_logs_log_id'), 'module_id' => $objRet->product_id, 'buckup_path' => $arrLog['buckup_path'], 'error_flg' => count($arrLog['err']), 'error' => implode("\n", $arrLog['err']), 'ok' => implode("\n", $arrLog['ok']), 'update_date' => 'CURRENT_TIMESTAMP', 'create_date' => 'CURRENT_TIMESTAMP'); $objQuery->insert('dtb_module_update_logs', $arrInsert); }
/** * 規格を設定していない商品を商品規格テーブルに登録 * * @param array $arrList * @return void */ function lfInsertDummyProductClass($arrList) { $objQuery = new SC_Query_Ex(); $objDb = new SC_Helper_DB_Ex(); $product_id = $arrList['product_id']; // 配列の添字を定義 $checkArray = array('product_class_id', 'product_id', 'product_code', 'stock', 'stock_unlimited', 'price01', 'price02', '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'; 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'])); } }
/** * DBへ入力内容を登録する. * * @param array $arrSettingsData オーナーズストア設定の連想配列 * @return void */ function registerOwnersStoreSettings($arrSettingsData) { $table = 'dtb_ownersstore_settings'; $objQuery = new SC_Query_Ex(); $count = $objQuery->count($table); if ($count) { $objQuery->update($table, $arrSettingsData); } else { $objQuery->insert($table, $arrSettingsData); } }