Fórum OpenCart Brasil

Por um e-commerce livre, confiável e profissional

Suporte geral sobre problemas técnicos para OpenCart v2.x.
#92120
Boa tarde, preciso de ajuda com o erro:

Notice: Trying to access array offset on value of type null in /home/storage/2/cd/cb/solmedicamentos/public_html/loja/catalog/view/theme/solmedicamentos/template/common/header.tpl on line 18> Notice: Trying to access array offset on value of type null in /home/storage/2/cd/cb/solmedicamentos/public_html/loja/catalog/view/theme/solmedicamentos/template/common/header.tpl on line 138

Vi em alguns tópicos que é recomendado alterarar a versão de PHP para a 7.3, mas mesmo alterando o erro persiste, alem disso, notei que os carroseis, como o banner principal, sumiram, provavelmente relacionado ao problema.
#92125
Ola @raildoaraujo

No caso aconselho a rever sua instalação, qual versão instalou?
Va no arquivo informado e veja que ele esta procurando e não encontrou ou configure adequadamente que tenha instalado.

NO erro também é mencionado TPL, a versão 3 nao usa esse padrão.

;)
#92126
Olá! Tudo bem?

Esse erro geralmente ocorre quando você tenta acessar um elemento de um array que não existe ou é nulo.
Exemplificando o porquê:
1. O array não foi inicializado corretamente;
2. O array não contém o índice que você está tentando acessar;
3. O valor do array é nulo;

Para resolver esse erro é necessário verificar o código e garantir que o array esteja sendo inicializado e preenchido corretamente.

Exemplo:
Código: Selecionar todos
$array = array('nome' => 'Leandro R.P.P.O', 'Cidade' => Sorocaba);
Código: Selecionar todos
echo $array['idade']; // Erro: Trying to access array offset on value of type null
Correção: Verificar se o índice existe no array
Código: Selecionar todos
if (isset($array['idade'])) {
  echo $array['idade'];
} else {
  echo 'idade não informada';
}
Nesse exemplo o erro ocorre porque o índice 'idade' não existe no array. A correção é verificar se o índice existe antes de tentar acessá-lo.

Comentaram sobre a versão do PHP porque a partir do PHP 7.1 o comportamento do PHP mudou em relação à acessibilidade de arrays. Anteriormente se tentasse acessar um índice que não existia em um array, o PHP simplesmente retornaria null sem emitir nenhum erro.
No entanto, a partir do PHP 7.1 começou a emitir um erro de nível Notice quando você tenta acessar um índice que não existe em um array.
A partir do PHP 7.4 o erro se tornou mais específico e agora é emitido como um erro de nível Notice com a mensagem "Trying to access array offset on value of type null".
Portanto, se você estiver usando uma versão recente do PHP (7.1 ou superior), é provável que o erro seja causado pela tentativa de acessar um índice que não existe em um array.

Verifique o que contém na linha 18 e 138 do arquivo header.tpl e poste aqui, por favor, para facilitar.