NFelipeFL 1 Denunciar post Postado Abril 19, 2012 Tô utilizando este código: menu.php <?php $inc = "404.php"; if($_GET['secao'])=="1") { $inc = "paginas/1.php"; } include($inc); ?> O que o código faz: no menu os hrefs estão divididos da seguinte forma: menu.php?secao=1, mas quando eu acesso menu.php sem o get SECAO, retorna o seguinte erro: Notice: Undefined index: secao in c:\easyphp1.8\www\pagina\menu.php on line 13. Sendo a linha 13: if($_GET['secao'])=="1") { $inc = "paginas/1.php"; }. Ou seja, ele apenas abre o menu.php sem erro quando existe a string SECAO (menu.php?secao). Como resolver para que quando eu abra apenas MENU.PHP sem string ele não retorne erros? (sem usar @ no $_get) Edit: Consegui colocando esse código no inicio do php: if (isset($_GET["secao"])) $get = addslashes(strip_tags(trim($_GET['secao']))); else $get = ""; E alterando a linha 13 para: if($get=="1") { $inc = "paginas/1.php"; Mas, outra pergunta: este código pode estar vulneravel por não ter o addslashes no $_GET['secao'] nessa linha: if (isset($_GET["secao"])) RESOLVIVO. Compartilhar este post Link para o post Compartilhar em outros sites
cristian_web 15 Denunciar post Postado Abril 19, 2012 Você pode desativar essas NOTICES também... Mas, outra pergunta: este código pode estar vulneravel por não ter o addslashes no $_GET['secao'] nessa linha: if (isset($_GET["secao"])) Provavelmente essa $_GET['secao'] é um numero certo? se sim você poderia usar somente isso para validar. <? $secao = (int) $_GET['secao'];// Caso seção = '555<a href>' se tornará apenas 555 ?> Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo Leal 4 Denunciar post Postado Abril 19, 2012 Você pode fazer +- assim: if( isset( $_GET[ 'secao' ] ) ) { $secao = $_GET[ 'secao' ]; switch( $secao ) { case 1: $inc = 'secao1'; break; case 2: $inc = 'secao2'; break; case 3: $inc = 'secao3'; break; default: header('Location: http://www.example.com/'); } include( 'paginas/' . $inc . '.php' ); } else { echo( 'Não existe seção seleciona!!' ); } Compartilhar este post Link para o post Compartilhar em outros sites