h4v3st 1 Denunciar post Postado Setembro 15, 2010 Boa tarde pessoal. Preciso de entender como funciona o seguinte esquema, é o seguinte: Estou incluindo as páginas por queryString, atualmente está assim: Exemplo $Pagina = strip_tags(trim($_GET["pg"])); $Path = "paginas/"; if (isset($Pagina)){ switch($Pagina){ case "home": include $Path."home.php"; break; case "add": include $Path."addProjeto.php"; break; default: include $Path."home.php"; break; } } QueryString: http://localhost/site/adm/IndexAdm.php?pg=add Ao clicar em um dos menus, ele me leva pra pagina addProjeto.php Nessa pagina addProjeto.php tenho o seguinte: <div id="Projeto"> <h1>» Adicionar projeto</h1><br /> <form id="formAddProjeto" name="formAddProjeto" enctype="multipart/form-data" method="post" action="COMO FAZER AQUI?"> <label>Nome projeto</label> <input type="text" name="editNome" size="27" id="editNome"/><br /> <label>Data</label> <input type="text" id="editData" size="27" name="editData"/><br /> <label>Logomarca</label> <input type="file" id="editLogomarca" size="27" name="editLogomarca" name="arquivo" /><br /> <label>Descrição do projeto</label> <textarea id="editDesc" name="editDesc" cols="21" rows="5" /></textarea> <input class="botao" name="ok" value="Incluir" type="submit" /> </form> </div> no action do form eu preciso redirecionar pra pagina incluirProjeto.php, onde eu dou o insert no banco. Mas como passar faço isso nessa situação? Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Setembro 15, 2010 hum.. case 'incluir': include $Path.'incluirProjeto.php'; break; <form id="formAddProjeto" name="formAddProjeto" enctype="multipart/form-data" method="post" action="?pg=incluir"> index.php <html> <head> <title></title> </head> <body> <?php $pg = isset( $_GET['pg'] ) ? $_GET['pg'].'.php' : 'home.php'; include $pg; ?> </body> </html> home.php <form action="?pg=incluir" method="post"> <input type="text" name="teste" value="Bruno" /> <input type="submit" name="ok" value="OK" /> </form> incluir.php <?php var_dump( $_POST ); saída, após submeter: array(2) { ["teste"]=> string(5) "Bruno" ["ok"]=> string(2) "OK" } Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Tavares 167 Denunciar post Postado Setembro 15, 2010 William disse tudo, mas eu mudaria essa linha: $Pagina = strip_tags(trim($_GET["pg"])); Por algo como: $Pagina = preg_match('/^[a-zA-Z0-9_.-]+$/',trim($_GET['pg'])) ? $_GET['pg'] : FALSE; Explicando: se for letras, numeros, underline, ponto ou hifen ele permite a query string, do contrário faz dela um boolean false. Não que estivesse inseguro, mas assim fica mais inteligente e completamente à prova de possíveis vulnerabilidades. Até mais. Compartilhar este post Link para o post Compartilhar em outros sites
h4v3st 1 Denunciar post Postado Setembro 16, 2010 deu certo aqui, na verdade eu ja tinha testado e meu grande amigo william me alertou que no meu arquivo qryString o nome da página estava escrito errado. Estava incluiRprojeto e o certo era incluiProjeto. Santa pressa que me atrasa! Obrigado! PS: HAXOR vou alterar o resgate da variavel igual você fez, valeu. Compartilhar este post Link para o post Compartilhar em outros sites