Ir ao conteúdo
  • Cadastre-se

PHP Erros PHP no site tipo autoload() depois que o hostgator att seu servidor!


Posts recomendados

Ola senhores,

 

Meu site funcionava perfeitamente no servidor da hostgator mais eles atualizaram o servidor para se não me engano PHP 7.4 e ai mudaram sintaxes o site não queria mais abrir fui fazendo umas modificações mas ainda a erros.

 

Exemplos de modificação.

 

Foto Anexada 1 e 2 em que Fala q a função mysql_connect() não foi definida DB.class.php Linha 45

 

porém corrigindo erro ali e erro aqui, o site ainda não loga mais como se não tivesse usuario, mas tem cadastrado nem aparece as categorias em PHP, e tem esse erro no rodape anexo 3

 

A questão é como corrigir esse erro

Array

(

        [type] => 8192

        [message] => __autoload() is deprecated, use spl_autoload_register() instead

        [file] => /home2/tesour07/public_html/include/application.php

        [line] => 33

)

 

E outra, acham melhor e qual seria servidor com PHP mais antigo, visto que meu site foi aproveitado do TCC pra minha loja.

 

Tenho link do site caso precisem.

 

 

Obrigado a todos.

2022-07-18_170347.png

2022-07-18_170527.png

2022-07-18_170656.png

Link para o comentário
Compartilhar em outros sites

Em 18/07/2022 às 18:44, MailingTester disse:

As extensões mysql_* ficaram obsoletas +- em 2012
image.png.b6f233771309215ba4dc078cd333e1c4.png
Foram completamente removidas no php7

atualize para mysqli

Ou volte a usar o php5

 

Certo, então esse erro do print corrigi, mas tem agora esse não sei como faria, alguma ideia?

 

Array

(

        [type] => 8192

        [message] => __autoload() is deprecated, use spl_autoload_register() instead

        [file] => /home2/tesour07/public_html/include/application.php

        [line] => 33

)

 

E você acha que encontro algum servidor de hospedagem de php cpanel que use PHP 7 ou abaixo de 7 hoje em dia? (pra não precisar revisando codigo por codigo, ja que ja corrigi alguns erros como da primeira postagem ai agora não sei como corrigi esse)

 

Obrigado.

Link para o comentário
Compartilhar em outros sites

Em 19/07/2022 às 01:18, MailingTester disse:

Mesma coisa!
__autoload() não se usa mais!
troque por spl_autoload_register(): https://www.php.net/spl_autoload_register

 

image.thumb.png.5d74db690f274ff6055fdc56a72b41c1.png

 

Verdade, eu ja tinha feito isso, lembrei agora, ai dava esse erro

 

function spl_autoload_register($class_name)

 

Array
(
    [type] => 4
    [message] => syntax error, unexpected 'function' (T_FUNCTION), expecting ')'
    [file] => /home2/tesour07/public_html/include/application.php
    [line] => 46
)

 

Ou

spl_autoload_register(function ($class_name) {



Array

(

     [type] => 64

     [message] => Cannot redeclare spl_autoload_register() [file] =>

/home2/tesour07/public_html/include/application.php [line] => 44 )

 

 

Qual seria esse erro, acredito o primeiro esta correto, pois no outro diz que não se declara assim, ai usando a sintaxe function spl_autoload_register($class_name), como procede nesse erro?

 

Array
(
    [type] => 4
    [message] => syntax error, unexpected 'function' (T_FUNCTION), expecting ')'
    [file] => /home2/tesour07/public_html/include/application.php
    [line] => 46
)

 

Eu lembrei era essa parte não passava.

Link para o comentário
Compartilhar em outros sites

  • Moderador

@joaohrs2 Dá uma olhadinha nesse vídeo aqui, que ele explica de forma bastante simples como usar a função  spl_autoload_register() 

Claro, não vai ser algo direto para resolver o seu problema, mas vai te dar uma ideia de COMO implementar no seu codigo.

Definitivamente, usar essa função é bastante inteligente. Porque com poucas linhas, você pode instanciar um objeto de classe, fazendo com que a classe necessária seja carregada automaticamente sem definir ela. 

 

 

Link para o comentário
Compartilhar em outros sites

9 horas atrás, DiF disse:

@joaohrs2 Dá uma olhadinha nesse vídeo aqui, que ele explica de forma bastante simples como usar a função  spl_autoload_register() 

Claro, não vai ser algo direto para resolver o seu problema, mas vai te dar uma ideia de COMO implementar no seu codigo.

Definitivamente, usar essa função é bastante inteligente. Porque com poucas linhas, você pode instanciar um objeto de classe, fazendo com que a classe necessária seja carregada automaticamente sem definir ela. 

 

 

 

obrigado, eu dei uma olhada e não achei algo para meu codigo, na verdade esta assim:

/* important function */
spl_autoload_register(function ($class_name) {



Ai deu erro na linha 46 que é essa:



function import($funcpre) {
    $file_path = DIR_FUNCTION. '/' . $funcpre . '.php';
    if (file_exists($file_path) ) {
        require_once( $file_path );
    }
}

 

Esta falando de tirar alguma coisa de hide e reescrever a função, so que naõ entendo como seria, na linha 46

 

Array

       ( [type] => 4

        [message] => syntax error, unexpected 'public' (T_PUBLIC), expecting ')'

        [file] => /home2/tesour07/public_html/include/application.php

        [line] => 46 )



function import($funcpre) {

 

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!