Ir para conteúdo
Fórum Script Brasil
  • 0

O mesmo código pode funcionar em ambientes diferentes? [resolvido]


Frank K Hosaka

Pergunta

Estou tendo problema no meu projeto Orçamento. Ele funciona aqui no PC, mas não funciona na Hostinger.

Olha só a mensagem dele:

Fatal error: Uncaught ArgumentCountError: Too few arguments to function ControleDiario::novaData(), 0 passed in /home/astudy-php/htdocs/astudy.net/mvc.php on line 10 and exactly 1 expected in /home/astudy-php/htdocs/astudy.net/Controles/ControleDiario.php:143 Stack trace: #0 /home/astudy-php/htdocs/astudy.net/mvc.php(10): ControleDiario->novaData() #1 {main} thrown in /home/frankhosaka-php/htdocs/php.frankhosaka.net/Controles/ControleDiario.php on line 143

Para tirar a minha dúvida, inventei esse código:

Arquivo Index.php
<?php
class ControleDiario 
{
    public function novaData($novaData)
    {
        return print_r($novaData);
    }
}

if($_GET)
{
    $rota=key($_GET);
    // roteador de William Duarte
    $segmentos=explode('_',$rota);
    $nomeControle=$segmentos[0] ?? 'ControleLogin';
    $metodo=$segmentos[1] ?? 'login';
    $parametro=$segmentos[2] ?? null;
    $controle=new $nomeControle();
    $controle->$metodo($parametro);
}

?>

<input type=date value=<?=date('Y-m-d')?> 
        onchange="location.replace('?ControleDiario.novaData.'+this.value)">

Na primeira tentativa, o Hostinger respondeu: 403 Forbidden. Nessa hora, lembrei que o Hostinger trabalha com Linux e o meu PC com Windows, eu tive que renomear o arquivo para index.php. Mas, ele funcionou do mesmo jeito que no PC; esse erro vai ser difícil de achar.

 

Editado por Frank K Hosaka
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Achei o erro!

Encontrei dois arquivos, um se chama mvc.php e outro se chama MVC.php, ele é ponto de partida do meu projeto que usa as classes do PHP. O correto é usar o index.php, mas esse arquivo está sendo utilizado para dar suporte aos códigos que eu fiz em PHP, tudo no diretório raiz.

A confusão começou na semana passada, eu fiquei contente com o roteador do William Duarte, ele resolveu um monte de problemas que enfrentava com as classes, principalmente como passar os parâmetros para a função, nisso, precisei mudar o arquivo mvc.php e todas as classes precisaram se adaptar. O problema é que eu não sabia que criei dois arquivos com nomes semelhantes lá no servidor.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...