1
resposta

erro ao adicionar produtos com segurança

Apos as implementações de segurança com COOKIE OU SESSION o adionaproduto abre o formulario, porém na hora de inserir os dados retorna o erro abaixo: Fatal error: Cannot redeclare logout() (previously declared in /var/www/html/cursos/alura/php/loja/includes/logica_usuario.php:28) in /var/www/html/cursos/alura/php/loja/includes/logica_usuario.php on line 28

e a função logout() so existe no script logica_usuario.php, ou seja, qualquer funcao que eu declarar por ultimo no logica_usuario.php da o mesmo erro.

1 resposta

Eustaquio, bom dia!

Isso ocorre devido ao comando usado para chamar o outro arquivo, caso você use o include ou o require, em várias páginas diferentes, acontece que existe a possibilidade de fazer buscar duas vezes o mesmo arquivo ou alguma informação daquele arquivo, sendo assim ele vai dar erro de redeclarar algo, no seu caso ele deu erro pois ele já tinha chamado a página que possui a função logout aí ela foi chamada de novo.

Para resolver esse problema você pode alterar suas páginas com include ou require para include_onde ou require_once e aí esse arquivo só será chamado apenas uma vez.

Você pode estudar mais a respeito em: https://pt.stackoverflow.com/questions/15286/o-que-usar-require-include-require-once-include-once

Espero ter ajudado e bons estudos!