Hellvix 0 Denunciar post Postado Janeiro 17, 2011 Tenho um site com acesso a banco, porém, toda vez que o usuário insere na barra de endereço um site inválido, aparece a mensagem: Warning: include(teste.php) [function.include]: failed to open stream: No such file or directory in C:\AppServ\www\index.php on line 739 Warning: include() [function.include]: Failed opening 'teste.php' for inclusion (include_path='.;C:\php5\pear') in C:\AppServ\www\index.php on line 739 Como posso trata-la de modo que fique "Página não encontrada"? Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Janeiro 17, 2011 mostre o teu codigo atual. antes de fazer o include, teste com um is_file() se o is_file retornar false, você coloca a tua mensagem de 'não encontrada' Compartilhar este post Link para o post Compartilhar em outros sites
Hellvix 0 Denunciar post Postado Janeiro 17, 2011 <?php if(empty($go)) { include("home.php"); } elseif(substr($go, 0, 3)=='http' or substr($go, 0, 1)=="/" or substr($go, 0, 1)==".") { echo '<font face=Tahoma size=2><br><blockquote>A página não existe.</b><br>Por favor, selecione uma página a partir do Menu Principal.</blockquote</font>'; } else { include("$go.php"); } Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Janeiro 17, 2011 cara!! que código horrivel. Segunda vez que vejo essa coisa porca hoje. <?php if(empty($go)) { include("home.php"); } elseif(substr($go, 0, 3)=='http' or substr($go, 0, 1)=="/" or substr($go, 0, 1)==".") { echo '<font face=Tahoma size=2><br><blockquote>A página não existe.</b><br>Por favor, selecione uma página a partir do Menu Principal.</blockquote</font>'; } else { include("$go.php"); } ?> de onde vcs tão pegando isso ? troca essa coisa medonha por: <?php if( empty($go) ) { include 'home.php'; } else { if( is_file( $go.'.php' ) ) include $go.'.php'; else echo 'Página não encontrada'; } ?> Compartilhar este post Link para o post Compartilhar em outros sites
Hellvix 0 Denunciar post Postado Janeiro 17, 2011 HUAUAHUAHUEIOIEA. Então, eu já tinha o site pronto aqui, daí só agora vi isso. Realmente não entendi a lógica de quem fez pra botar aquele substring alí (?). Eu refiz e ficou assim: <?php if(!is_file("$go.php")) { echo '<font face=Tahoma size=2><br><blockquote>A página digitada não existe.</b><br>Por favor, selecione uma página a partir do Menu Principal.</blockquote</font>'; } elseif(empty($go)){ include("home.php"); } else { include("$go.php"); } ?> Muito obrigado pela ajuda, William. Serviu de MAAAIS o seu conselho de usar o is_file. :) Compartilhar este post Link para o post Compartilhar em outros sites