/** * 空メール管理テーブルからトークンが一致する行を削除し、 * 次に遷移させるページのURLを返す。 * * メールアドレスは $_SESSION['mobile']['kara_mail_from'] に登録される。 * * @param string $token トークン * @return string|false URLを返す。エラーが発生した場合はfalseを返す。 */ function gfFinishKaraMail($token) { $objQuery = new SC_Query_Ex(); $arrRow = $objQuery->getRow('session_id, next_url, email', 'dtb_mobile_kara_mail', 'token = ? AND email IS NOT NULL AND receive_date >= ?', array($token, date('Y-m-d H:i:s', time() - MOBILE_SESSION_LIFETIME)), DB_FETCHMODE_ORDERED); if (!isset($arrRow)) { return false; } $objQuery->delete('dtb_mobile_kara_mail', 'token = ?', array($token)); list($session_id, $next_url, $email) = $arrRow; $objURL = new Net_URL(HTTP_URL . $next_url); $objURL->addQueryString(session_name(), $session_id); $url = $objURL->getURL(); session_id($session_id); session_start(); $_SESSION['mobile']['kara_mail_from'] = $email; session_write_close(); return $url; }
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)); }