function enablePlugin() { $objQuery = new SC_Query_Ex(); $name = preg_replace("/.php/", "", __FILE__); // XXX 正規表現エスケープ漏れでは? $objQuery->update("dtb_plugin", array('enable' => '0'), "plugin_name = ?", array($name)); }
/** * サブデータを登録する. * * @param mixed $data * @param string */ function registerSubData($data, $key = null) { $subData = $this->getSubData(); if (is_null($key)) { $subData = $data; } else { if (is_array($subData)) { $subData[$key] = $data; } else { $subData = array($key => $data); } } $arrUpdate = array('sub_data' => serialize($subData)); $objQuery = new SC_Query_Ex(); $objQuery->update('dtb_module', $arrUpdate, 'module_code = ?', array($this->getCode())); $this->subData = $subData; }
/** * セッションのデータを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; }
/** * 受注テーブルの論理削除 */ function lfDelete($arrOrderId) { $objQuery = new SC_Query_Ex(); if (!isset($arrOrderId) || !is_array($arrOrderId)) { return false; } $arrUpdate = array('del_flg' => 1, 'update_date' => 'CURRENT_TIMESTAMP'); $objQuery->begin(); foreach ($arrOrderId as $orderId) { $objQuery->update('dtb_order', $arrUpdate, 'order_id = ?', array($orderId)); } $objQuery->commit(); $this->tpl_onload = "window.alert('選択項目を削除しました。');"; return true; }
/** * 空メールから取得したメールアドレスを空メール管理テーブルに登録する。 * * @param string $token トークン * @param string $email メールアドレス * @return boolean 成功した場合はtrue、失敗した場合はfalseを返す。 */ function gfRegisterKaraMail($token, $email) { $objQuery = new SC_Query_Ex(); // GC $time = date('Y-m-d H:i:s', time() - MOBILE_SESSION_LIFETIME); $objQuery->delete('dtb_mobile_kara_mail', '(email IS NULL AND create_date < ?) OR (email IS NOT NULL AND receive_date < ?)', array($time, $time)); $kara_mail_id = $objQuery->get('kara_mail_id', 'dtb_mobile_kara_mail', 'token = ?', array($token)); if (!isset($kara_mail_id)) { return false; } $arrValues = array('email' => $email); $arrRawValues = array('receive_date' => 'CURRENT_TIMESTAMP'); $objQuery->update('dtb_mobile_kara_mail', $arrValues, 'kara_mail_id = ?', array($kara_mail_id), $arrRawValues); return true; }
/** * dtb_moduleを更新する * * @param object $objRet */ function updateMdlTable($objRet) { $table = 'dtb_module'; $where = 'module_id = ?'; $objQuery = new SC_Query_Ex(); $count = $objQuery->count($table, $where, array($objRet->product_id)); if ($count) { $arrUpdate = array('module_code' => $objRet->product_code, 'module_name' => $objRet->product_name, 'update_date' => 'CURRENT_TIMESTAMP'); $objQuery->update($table, $arrUpdate, $where, array($objRet->product_id)); } else { $arrInsert = array('module_id' => $objRet->product_id, 'module_code' => $objRet->product_code, 'module_name' => $objRet->product_name, 'auto_update_flg' => '0', 'create_date' => 'CURRENT_TIMESTAMP', 'update_date' => 'CURRENT_TIMESTAMP'); $objQuery->insert($table, $arrInsert); } }
/** * 規格を設定している商品の商品規格テーブルを更新 * (deliv_fee, point_rate, sale_limit) * * @param array $arrList * @return void */ function lfUpdateProductClass($arrList) { $objQuery = new SC_Query_Ex(); $sqlval = array(); $sqlval['deliv_fee'] = $arrList['deliv_fee']; $sqlval['point_rate'] = $arrList['point_rate']; $sqlval['sale_limit'] = $arrList['sale_limit']; $where = 'product_id = ?'; $objQuery->update('dtb_products_class', $sqlval, $where, array($arrList['product_id'])); }
/** * 規格分類情報を更新 * * @param array $arrForm フォームパラメータークラス * @return integer 更新件数 */ function lfUpdateClass($arrForm) { $objQuery = new SC_Query_Ex(); // UPDATEする値を作成する。 $sqlval['name'] = $arrForm['name']; $sqlval['update_date'] = 'CURRENT_TIMESTAMP'; $where = "classcategory_id = ?"; // UPDATEの実行 $ret = $objQuery->update("dtb_classcategory", $sqlval, $where, array($arrForm['classcategory_id'])); return $ret; }
/** * 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); } }
function updateOrderSummary($customer_id) { $objQuery = new SC_Query_Ex(); $arrOrderSummary = $objQuery->getRow("SUM( payment_total ) as buy_total, COUNT(order_id) as buy_times,MAX( create_date ) as last_buy_date, MIN(create_date) as first_buy_date", "dtb_order", "customer_id = ? AND del_flg = 0 AND status <> ?", array($customer_id, ORDER_CANCEL)); $objQuery->update("dtb_customer", $arrOrderSummary, "customer_id = ?", array($customer_id)); }