magru
@magru

Почему пропадают куки после перезагрузки страницы?

Я использую AJAX в вордпресс для того что бы добавить продукт в корзину. Вот код функции которая это делает :
function updateCart(){
	$cart = array();
	$prodID = "";
	$response = array();
	$cookie_name = 'cart';

	if(isset($_REQUEST['prodID'])){
		$prodID = $_REQUEST['prodID'];
	}else{
		$prodID = false;
	}
	
	if(isset($_COOKIE['cart'])){
		$cart = json_decode( stripcslashes($_COOKIE[$cookie_name]), true);
		array_push($cart, $prodID);
		if(setcookie( $cookie_name, json_encode($cart, true), time() + (24 * 60 * 60), COOKIEPATH, COOKIE_DOMAIN )){
			$response['cookie'] = 'cart_exist';
			wp_send_json_success( $response );
		}else{
			wp_send_json_error( );
		}
	}else{
		if($prodID){
			array_push($cart, $prodID);
		}
		
		if(setcookie( $cookie_name, json_encode($cart, true), time() + (24 * 60 * 60))){
			$response['cookie'] = 'cart_not_exist';
			$response['cart'] = $_COOKIE['cart'];
			wp_send_json_success( $response );
		}else{
			wp_send_json_error( );
		}
	}
}

В мобильной версии сайта после перезагрузки страницы я не вижу куки которые прописал, хотя функция возвращает wp_send_json_success. В десктопной версии все работает отлично (для мобильной версии подгружается другая версия шаблона вордпресс, но функция та же).

Есть какие то идеи почему так ? (в мобильной версии используется jquery mobile и bootstrap).
  • Вопрос задан
  • 1986 просмотров
Пригласить эксперта
Ответы на вопрос 2
Taraflex
@Taraflex
Ищу работу. Контакты в профиле.
Используйте localstorage для хранения данных.
Ответ написан
Комментировать
copist
@copist
Empower people to give
мануал: setcookie

сигнатура:
bool setcookie ( string $name [, string $value [, int $expire = 0 [, string $path [, string $domain [, bool $secure = false [, bool $httponly = false ]]]]]] )

Я бы ещё указал параметры путь $path='/' и домен $domain='какой-надо.ru'
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы