Intereting Posts

Вызов функции PHP с помощью AJAX, но перенаправление не работает

У меня проблема, которая поворачивает голову. Я объясню ситуацию … Я работаю над проектом с opencart, и я создал кнопку, которая работает следующим образом: когда вы нажимаете на нее, она должна отправить владельцу веб-сайта все, что находится внутри корзины покупок, и эти продукты собираются вместе с данными о клиентах и ​​могут отправлять электронную почту только в том случае, если пользователь зарегистрирован, тогда проблема начинается.

Это кнопка, на которую кликнет клик:

<div class="checkout-button"><a id="button-quotation" class="button">click me</a></div> 

Затем через AJAX вызывается функция PHP, чтобы проверить это:

 $(document).ready(function(){ $('#button-quotation').click(function(){ var clickBtnValue = $(this).val(); var ajaxurl = 'index.php?route=checkout/cart/quotation', data = {'action': clickBtnValue}; $.post(ajaxurl, data, function (response) { alert("works!!"); }); });}); 

И здесь есть функция перенаправления, которая отправит клиента на страницу входа в систему, если она не занесена в журнал:

 public function quotation(){ if (!$this->customer->isLogged()) { $this->session->data['redirect'] = $this->url->link('checkout/cart', '', 'SSL'); $this->redirect($this->url->link('account/login', '', 'SSL')); } } 

Я могу заставить электронные письма работать, но я не могу запустить перенаправление, если клиент не зашел на сайт. Кто-нибудь может мне помочь?

Если вы перенаправляете в свою PHP-функцию, будет перенаправлен только запрос AJAX.

Что вы должны сделать: пусть функция возвращает данные, которые указывают на JavaScript, что он должен выдать перенаправление на вашу страницу входа.

См. Также этот вопрос: Как управлять запросом перенаправления после вызова JQuery Ajax

Вы можете отправить URL-адрес в ajax и перенаправить через javascript.

window.location.href = response.your_login_url ;