Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Гибридное приложение, проблема с сессиями


Recommended Posts

Здравствуйте!

 

Создаю гибридное приложение, для этих целей использую отдельные контроллеры, которые через шаблон формируют json, которые забираю через $.ajax jQuery и формирую контент страниц - все стандартно.

 

Проблема возникает с сессиями, когда добавляю товар в корзину - товар добавляется, но при следующем вызове корзина оказывается пуста.

Вот пример ответа при нажатии на кнопку "добавить в корзину"

post-3896-0-32986000-1444322108_thumb.jpg

Как мы видим товар добавился, сработала функция add из \system\library\cart.php, но если мы прозвоним повторно или добавим еще товар, то переменная $_SESSION['data']['cart'] будет очищена или содержать в  себе только последний добавленный товар. Проблема явно с сессиями, возможно нужно передавать какие то заголовки, хотя я и это пробовал.

 

Эта ошибка возникает только когда отлаживаю через браузер (как мобильный, так и на ПК), но как только я упаковываю приложение и ставлю на телефон, то все работает!

 

Прошу помочь, отладка с браузера идет гораздо быстрее, да и не понятно почему такая разница в работе, по сути оба случая - браузеры, почему в одном работает (webview android), а в других нет..

 

 

Код добавления товара (стандартный из opencart)

var cart = {
	'add': function(product_id, quantity) {
		$.ajax({
			url: config.index + 'app/checkout/cart/add',
			type: 'post',
			data: 'product_id=' + product_id + '&quantity=' + (typeof(quantity) != 'undefined' ? quantity : 1),
			dataType: 'json',
			beforeSend: function() {
				console.log('beforeSend');
			},
			complete: function() {
				console.log('complete');
			},			
			success: function(json) {
				if (json['success']) {
					setTimeout(function () {
						$('#cart > button').html('<span id="cart-total">total= ' + json['total'] + '</span>');
					}, 100);
				
					$('#cart > ul').load(config.index + 'app/cart/info ul li');
				}
			},
			error: function(xhr, status, error) {
				console.log(error);
			}
		});
	},
}

post-3896-0-32986000-1444322108_thumb.jpg

Змінено користувачем amir
Надіслати
Поділитися на інших сайтах


Исключите из возможных причин - дополнения браузера, такие как скачивалка от savefrom.net или tampermonkey. Проверяйте содержимое сессии на всех шагах добавления товара. На месте виднее.

Змінено користувачем halfhope
Надіслати
Поділитися на інших сайтах

Все это исключено, этот же самый сайт работает как версия обычного сайта, пока не начну звонить на него ajax, сессии и данные проверяю, теряется корзина при обновлении и все тут, буду рад конкретным советам

Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.