Changeset 19947 for branches/version-2_5-dev/data/class
- Timestamp:
- 2011/01/17 18:32:35 (16 years ago)
- Location:
- branches/version-2_5-dev/data/class
- Files:
-
- 4 edited
-
pages/cart/LC_Page_Cart.php (modified) (2 diffs)
-
pages/products/LC_Page_Products_Detail.php (modified) (1 diff)
-
pages/products/LC_Page_Products_List.php (modified) (1 diff)
-
util/SC_Utils.php (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
branches/version-2_5-dev/data/class/pages/cart/LC_Page_Cart.php
r19944 r19947 196 196 } else { 197 197 if (preg_match("/entry/", $_SERVER['HTTP_REFERER'])) { 198 $_SESSION['cart_prev_url'] = URL_PATH. 'entry/kiyaku.php';198 $_SESSION['cart_prev_url'] = HTTPS_URL . 'entry/kiyaku.php'; 199 199 } else { 200 200 $_SESSION['cart_prev_url'] = $_SERVER['HTTP_REFERER']; … … 202 202 } 203 203 } 204 $this->tpl_prev_url = $_SESSION['cart_prev_url']; 204 // 妥当性チェック 205 if (!SC_Utils_Ex::sfIsInternalDomain($_SESSION['cart_prev_url'])) { 206 $_SESSION['cart_prev_url'] = ''; 207 } 208 209 $this->tpl_prev_url = (isset($_SESSION['cart_prev_url'])) ? $_SESSION['cart_prev_url'] : ''; 205 210 } 206 211 -
branches/version-2_5-dev/data/class/pages/products/LC_Page_Products_Detail.php
r19944 r19947 198 198 199 199 // カート「戻るボタン」用に保持 200 $_SESSION['cart_referer_url'] = $_SERVER['HTTP_REFERER']; 200 if (SC_Utils_Ex::sfIsInternalDomain($_SERVER['HTTP_REFERER'])) { 201 $_SESSION['cart_referer_url'] = $_SERVER['HTTP_REFERER']; 202 } 201 203 202 204 if (!empty($_POST['gmo_oneclick'])) { -
branches/version-2_5-dev/data/class/pages/products/LC_Page_Products_List.php
r19944 r19947 168 168 169 169 // カート「戻るボタン」用に保持 170 $_SESSION['cart_referer_url'] = $_SERVER['HTTP_REFERER']; 170 if (SC_Utils_Ex::sfIsInternalDomain($_SERVER['HTTP_REFERER'])) { 171 $_SESSION['cart_referer_url'] = $_SERVER['HTTP_REFERER']; 172 } 171 173 172 174 SC_Response_Ex::sendRedirect(CART_URLPATH); -
branches/version-2_5-dev/data/class/util/SC_Utils.php
r19912 r19947 2230 2230 return true; 2231 2231 } 2232 2233 /** 2234 * 指定されたURLのドメインが一致するかを返す 2235 * 2236 * 戻り値:一致(true) 不一致(false) 2237 * 2238 * @param string $url 2239 * @return boolean 2240 */ 2241 function sfIsInternalDomain($url) { 2242 $netURL = new Net_URL(HTTP_URL); 2243 $host = $netURL->host; 2244 if (!$host) return false; 2245 $host = preg_quote($host, "#"); 2246 if (!preg_match("#^(http|https)://{$host}#i", $url)) return false; 2247 return true; 2248 } 2232 2249 } 2233 2250 ?>
Note: See TracChangeset
for help on using the changeset viewer.
