Ola galera preciso de ajuda aqui. Tenho uma pagina web quando o usuario clica em comprar no produto ele é redirecionado para uma pagina que pega o id do produto ja cadastrado no banco, ai quando o usuario preenche e formulario de compra e clica em comprar ele vai para uma pagina de cadastro.php e depois é redirecionado com o header para a pagina compra ae é que vem o problema quando faço isso diz que a variavel id é indefinida. Alguem pode me ajudar ja pesquisei varias maneiras mas nenhuma conseguiu resolver meu problema
Sem ver seu código é complicado, pois não temos como adivinhar qual variável id você está falando e como você está passando os parâmetros. Pra começar, é o id de quê: do cliente, do produto?
Mas, supondo que seu código seja grande e que seja complicado postá-lo aqui (e possivelmente ninguém vai ler tudo), tente debugar seu código usando ferramentas de desenvolvedor (F12 no Firefox) para o lado cliente. Do lado servidor, alguns echos no código php podem ajudar a entender o que está se passando. Com mais informações, você pode voltar aqui e solicitar uma ajuda mais precisa.
Abraço.
Você pode passar o id do produto através de cookies, por exemplo:
setcookie(‘idproduto’, $id, time() + (60* 60 * 8));//cookie ativo por 6 horas
A variável ‘$id’ poderia ser o id do produto que vem do banco de dados.
Você pode recuperar o valor do cookie em qualquer página(pois o cookie é persistente até que seja destruido, ou seu tempo de existência expire) fazendo:
$id = $__COOKIE[‘id_produto’];
Depois de finalizada a compra destrua o cookie:
setcookie(‘idproduto’, ‘’, time() - 3600);
Espero ter ajudado.
Se você ainda tem o id do produto na página de cadastro, precisa repassá-lo para página de compra
header("Location: compra.php?idproduto=$id");
e na página de compra…
$idproduto = filter_input(INPUT_GET, 'idproduto'); # evite $_GET
Obrigado deu certo