Erro fatal em chamada à função no PHP 7 [RESOLVIDO]

1. Erro fatal em chamada à função no PHP 7 [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 08/02/2016 - 19:31h

Estou com um problema ao passar do PHP 5.6 para o PHP 7:

Fatal error: Uncaught Error: Call to a member function getNome() on unknown in C:\apache2\www\htdocs\syslogin\siscae\internoSI.php:54 Stack trace: #0 C:\apache2\www\htdocs\syslogin\siscae\autenticSI.php(108): include() #1 C:\apache2\www\htdocs\syslogin\siscae\controleusuSI.php(35): AutenticaSiscae->logar('ff0ba67906d46f0...', '12821b4b1e7a1d2...') #2 {main} thrown in C:\apache2\www\htdocs\syslogin\siscae\internoSI.php on line 54

A função getNome() está no arquivo usuario.php, sendo que este arquivo é chamado em todos os arquivos envolvidos:

public function getNome() {
return $this->usernome;
}


A linha 108 do arquivo internoSI.php:

case ((($dados['userativo']) === 1) && (($dados['usernivel']) === 1)):
# Direciona o Administrador para dentro do sistema
//header('Location: ../siscae/internoSI.php');
include '../siscae/internoSI.php'; <<< linha 108
break;


A linha 35 do arquivo controleusuSI.php:

if ($aut->logar($login, $string)) {  <<< linha 35
logar();
}


A linha 54 do arquivo internoSI.php:

<strong><?php echo $usuario->getNome(); ?>.</strong> 


Já tentei várias coisas, dei um var_dump em $usuario no arquivo internoSI.php e retorna um valor nulo, coisa que antes não acontecia, funcionava direitinho.

Fatal error: Uncaught Error: Call to a member function getNome() on null in

Se eu comento a linha 54 do arquivo internoSI.php o arquivo funciona perfeitamente, mas não retorna o nome do usuário logado, sendo que o login acontece normalmente.

Alguém tem uma solução?


  


2. MELHOR RESPOSTA

Perfil removido
removido

(usa Nenhuma)

Enviado em 09/02/2016 - 17:14h

Cara, já tentou transformar este nome de usuário em uma variável de sessão? Teoricamente, esse processo seria feito no momento do login. É uma sugestão.

Eu acabei de atualizar aqui para o PHP 7.0.3, se quiser me mandar os arquivos pra eu tentar aqui...
Não há nada bom nem mau a não ser estas duas coisas: a sabedoria que é um bem e a ignorância que é um mal.


3. Re: Erro fatal em chamada à função no PHP 7 [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 08/02/2016 - 21:57h

Sobe.


4. Re: Erro fatal em chamada à função no PHP 7 [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 09/02/2016 - 14:06h

Sobe.


5. Re: Erro fatal em chamada à função no PHP 7 [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 09/02/2016 - 14:26h

Vc instanciou a variável $usuario no internoSI.php?
Não há nada bom nem mau a não ser estas duas coisas: a sabedoria que é um bem e a ignorância que é um mal.



6. Re: Erro fatal em chamada à função no PHP 7

Buckminster
Buckminster

(usa Debian)

Enviado em 09/02/2016 - 15:55h

ru4n escreveu:

Vc instanciou a variável $usuario no internoSI.php?
Não há nada bom nem mau a não ser estas duas coisas: a sabedoria que é um bem e a ignorância que é um mal.


Sim, o login é feito e a sessão é iniciada.
Mas veja a mensagem quando seto ela separadamente como string ou integer, etc:

Fatal error: Uncaught Error: Call to a member function getNome() on string in

if (!isset($usuario)) {
$usuario = 'que droga isso';
}


Quando eu deixo a linha 54 assim

<?php echo $usuario; ?> 


com a variável setada como acima, logicamente aparece 'que droga isso' na variável $usuario e o arquivo é executado sem erros dando a mensagem de saudação "Bom dia, que droga isso".

A única mudança feita foi a atualização do PHP 5.6 para o PHP 7. Antes funcionava tudo, agora dá esse erro. Faz uns 3 dias que estou lutando, pesquisando... e nada.
Já verifiquei o php.ini umas 30 vezes.

O PHP não está encontrando e/ou não reconhecendo a função getNome().
Talvez eu esteja cometendo algum erro básico, geralmente é isso quando se foca somente em um problema só e daí o cara começa a ficar esquizofrênico e obcecado em relação a esse problema.

Quer que eu poste os arquivos completos?



7. Re: Erro fatal em chamada à função no PHP 7 [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 09/02/2016 - 17:17h

Ele é uma variável de sessão.

Te mando os arquivos por e-mail aqui no VOL ou quer que eu poste aqui?


8. Re: Erro fatal em chamada à função no PHP 7 [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 09/02/2016 - 17:19h

Manda por email. Tem banco?
Não há nada bom nem mau a não ser estas duas coisas: a sabedoria que é um bem e a ignorância que é um mal.







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts