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

Include Com Variável


Guest Dave Howard Schiff

Pergunta

Guest Dave Howard Schiff

Boa dia a todos,

Fiz uma cuidadosa pesquisa no forum, mas não encontrei um post que esclarecesse meu problema.

Eu tenho um pequeno sistema feito em PHP, coisa realmente simples. Tudo o que foi até o momento está funcionando belezinha, exceto quando preciso fazer um INCLUDE baseado no resultado de uma variável.

Eis o trecho do programa:

Nota importante, no topo do código, eu estou fazendo a identificação da variável normal, inclusive fiz um echo nela para me certificar de que tudo está ok.

Já li em algum lugar, que dependendo do hosting, não é possível usar o INCLUDE com uma variável e minha hospedagem é no <www.pandela.org> e nãol creio que eles mudem alguma configuração se esse for o caso.

Ajudem please! Estou parado nesse problema pra liquidar meu sisteminha.

if ($loginok ==1) {
                        $url = "showresults.php?usuario=".$iduser;
                        echo $url;
                        include $url; 
                      } else {
                        include "loginerro.php";
                      }
Eis o erro que eu recebo:
Warning: include(showresults.php?usuario=dhschiff) [function.include]: failed to open stream: No such file or directory in /home/users/b9/dhschiff/www/dhschiff.pandela.org/bd/loginuser.php on line 35

Warning: include() [function.include]: Failed opening 'showresults.php?usuario=dhschiff' for inclusion (include_path='.:') in /home/users/b9/dhschiff/www/dhschiff.pandela.org/bd/loginuser.php on line 35
Já tentei isso aqui:
eval( "include ".$url );

E nada novamente. Alguém teria alguma idéia de como posso resolver essa pegadinha?

Sds,

Dave Howard Schiff.

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

Segundo o erro reportado o que acontece é que os arquivos não estão sendo encontrados para dar o include...

failed to open stream: No such file or directory

Failed opening 'showresults.php?usuario=dhschiff' for inclusion

Link para o comentário
Compartilhar em outros sites

  • 0

Mas é o que o php está reportando...

Que eu me lembre não tem como o host impedir um include com variáveis, o que pode acontecer é a versão do php ser anterior a 4.3.0 e ai sim se não me engano isso não é possível pela limitação que existia antes da versão citada...

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Dave Howard Schiff

Testei,

O problema realmenet não é esse. Eu tentei fazer a variável conter um valor óbvio d+ ( index.php por exemplo ) e até aí tudo bem... ele chamou a página como planejado. Mas basta eu adicionar qualquer outra função ( exemplo: index.php?section=teste ) e ele já se perde inteiro.

Link para o comentário
Compartilhar em outros sites

  • 0

No manual do include um dos exemplo chamando variáveis manda incluir o caminho completo até o arquivo ou seja:

include "http://www.site.com/arquivo.php?variavel=0";

Ao invés de:

include "arquivo.php?variavel=0";

Mas eu sempre chamei direto apenas o arquivo com as variáveis...

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Visitante

faz o seguinte, como a pagina esta no seu servidor, antes de dar o include, pega as variaveis que você utiliza nessa pagina a ser incluida e declara elas, exemplo:

não FAZ ASSM:

if ($loginok ==1) {
                        $url = "showresults.php?usuario=".$iduser;
                        echo $url;
                        include $url;
                      } else {
                        include "loginerro.php";
                      }
E SIM ASSIM:
if ($loginok ==1) {
                        $url = "showresults.php";
                        $usuario=$iduser;           //variavel que seria passsada pelo URL
                        echo $url."?usuario=".$usuario;
                        include $url;
                      } else {
                        include "loginerro.php";
                      }
Da para melhor o codigo acima para isso:
if ($loginok ==1) {
                        $url = "showresults.php";
                        $usuario=$iduser;           //variavel que seria passsada pelo URL
                        echo "showresults.php?usuario=".$usuario;
                        include "showresults.php";
                      } else {
                        include "loginerro.php";
                      }

//como você está incluindo uma página, e ela está no seu servidor, você pode utilizar as variaveis dela ( depois da inclusao ) e ela pode utilizar as suas variaveis declaradas antes da inclusão xD

Link para o comentário
Compartilhar em outros sites

  • 0
Guest Visitante

faz o seguinte, como a pagina esta no seu servidor, antes de dar o include, pega as variaveis que você utiliza nessa pagina a ser incluida e declara elas, exemplo:

não FAZ ASSM:

if ($loginok ==1) {
                        $url = "showresults.php?usuario=".$iduser;
                        echo $url;
                        include $url;
                      } else {
                        include "loginerro.php";
                      }
E SIM ASSIM:
if ($loginok ==1) {
                        $url = "showresults.php";
                        $usuario=$iduser;           //variavel que seria passsada pelo URL
                        echo $url."?usuario=".$usuario;
                        include $url;
                      } else {
                        include "loginerro.php";
                      }
Da para melhor o codigo acima para isso:
if ($loginok ==1) {
                 
                        $usuario=$iduser;           //variavel que seria passsada pelo URL
                        echo "showresults.php?usuario=".$usuario;
                        include "showresults.php";
                      } else {
                        include "loginerro.php";
                      }

//como você está incluindo uma página, e ela está no seu servidor, você pode utilizar as variaveis dela ( depois da inclusao ) e ela pode utilizar as suas variaveis declaradas antes da inclusão xD

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,3k
    • Posts
      652,4k
×
×
  • Criar Novo...