No soy un experto en PHP y estoy tratando de establecer una cookie que contenga un código de referencia de la URL. Por ejemplo: www.example.com?promotioncode=google
debe establecer un nombre de cookie promocode, valorar lo que sea posterior al =
y un vencimiento de 6 meses.PHP Cookies usando Variable from URL
puedo recuperar el promotioncode usando
$_GET['promotioncode']
pero me parece que no puede insertarlo en la cadena de galletas. He intentado algunas de las formas:
$id = 'promo';
$value = $_GET['promotioncode'];
$time = time()+60*60*24*180;
setcookie($id, $value, $time);
y
$id = 'promo';
$time = time()+60*60*24*180;
setcookie($id, $_GET['promotioncode'], $time);
pero no funciona. Si utilizo una palabra o número como el valor de la cookie, entonces la cookie no establece ningún problema.
¿Qué estoy haciendo/haciendo mal?
¿Marcó el encabezado de respuesta HTTP? Su intento de establecer una cookie puede fallar debido al hecho de que el encabezado ya ha sido enviado. ¿Revisaste tu registro de errores? – Gumbo
Esto es realmente en una instalación de magento y esto se agrega de la misma manera que otras cookies generadas por magento .. si configuro el valor en 123 funciona bien, el problema está yendo a través del parámetro de la url. – Andy
Ese código debería funcionar, y funciona aquí. ¿Cómo sabes que no funciona? ¿Verifica las cookies o verifica el valor de retorno de setcookie()? ¿Has vardump el contenido de $ _GET? ¿Algo extraño sobre eso? – Sylverdrag