2014-11-18 2 views
1

У меня проблема на моем веб-сайте в opencart. Я всегда хочу, чтобы клиент, который установил адрес доставки, не малайзии, всегда платил в долларах США.php page refresh once - opencart

проблема в том, что они выберут MYR и выбирают страну не малайзии и платят.

так я применил ниже в каталоге/контроллер/проверки/checkout.php

 $this->currency->set('MYR'); 
    if ($_SESSION['shipping_zone_id'] == '3528'){ 
    $this->currency->set('USD'); 
    } 

проблема для валюты идти в сессии, ей необходимо обновление страницы, поэтому я применил ниже:

 $this->currency->set('MYR'); 
    if ($_SESSION['shipping_zone_id'] == '3528'){ 
    $this->currency->set('USD'); 
    $sec = "10"; 
    header("Refresh: $sec; url=index.php?route=checkout/checkout"); 
    } 

приведенный выше да обновляет страницу, но он продолжает обновлять страницу. Я хочу, чтобы он обновлялся только один раз. плз совет

+0

Показать 'var_dump ($ _ SESSION [ 'shipping_zone_id']);' 'непосредственно перед заголовком()'. – Justinas

+0

замечание происходит, когда я применяю var_dump ($ _ SESSION ['shipping_zone_id']); –

+0

Надеюсь, вы прокомментировали/удалили строку заголовка и заменили ее на функцию 'die()' или 'exit'? – Justinas

ответ

0

Добавить строки кода ниже

$this->currency->set('MYR'); 
if ($_SESSION['shipping_zone_id'] == '3528'){ 
$this->currency->set('USD'); 


if(!empty($_GET['refresh']) && $_GET['refresh'] == 0){} //add this 
else{ 

$sec = "10"; 
header("Refresh: $sec; url=index.php?refresh=0&route=checkout/checkout"); 

} //and close it here 

}