mzaidan 2 Denunciar post Postado Março 23, 2012 Prezados, boa noite. Estou precisando dar um post para a mesma página, tem como? Nesse post são passadas variáveis e criadas sessões. Eu já estou passando ela para outra página, e está tudo ok. Mas, precisaria passar para a mesma página, ao invés de outra. Tem como? Desde já agradeço. Compartilhar este post Link para o post Compartilhar em outros sites
ESerra 744 Denunciar post Postado Março 23, 2012 Qual a dificuldade? Basta colocar o action com o próprio nome da página, ai bastaria algo do tipo <?php if(count($_POST) > 0){ //Já foi enviado o post }else{ //Ainda não foi enviado o post } ?> Compartilhar este post Link para o post Compartilhar em outros sites
Bruno Augusto 417 Denunciar post Postado Março 23, 2012 Não, o correto seria verificar o valor de REQUEST_METHOD na variável $_SERVER. Se for POST (ou post, não lembro agora), o formulário foi submetido. Se não, não foi, óbvio. :P Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Março 23, 2012 <form action="<?php echo $_SERVER['PHP_SELF'];?>" .... tenta isto... vejo no html q o nagecador gera q ele aponta pra propria pagina... Compartilhar este post Link para o post Compartilhar em outros sites
Gabriel Heming 766 Denunciar post Postado Março 23, 2012 <form action="#" method="post" > Por padrão, todos os fomulários/links com # apontam para a própria página. Compartilhar este post Link para o post Compartilhar em outros sites
rafael-tdc 13 Denunciar post Postado Março 23, 2012 Ve se ajuda: Se a sua pagina for produtos por exemplo: produtos.php no começo da pagina poe: <?php if(isset($get['action'])){ SUA AÇÃO AQUI } ?> ... <form action="produtos.php?action" method="post"> ... </form> Se você entende bem do assunto, da para adaptar melhor, eu fiz só uma base para você ter a lógica Compartilhar este post Link para o post Compartilhar em outros sites
Dii 15 Denunciar post Postado Março 23, 2012 Vamos a explicação. Por PADRÃO , se você deixar o campo do action do formulário assim: <form action="" method="post"> Ele já vai para a mesma página, entretanto não é o método mais correto. No PHP existe um Array global com variáveis de Sistema ( A grosso modo falando ) que possuem índices diferentes, um deles é o PHP_SELF, que retorna a sua URI atual. Exemplo: http://localhost/meu-site/minha-pagina.php Ele vai retornar: /meu-site/minha-pagina.php Entendeu? Faça como o @igor disse: <form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post"> Qual a dificuldade? Basta colocar o action com o próprio nome da página, ai bastaria algo do tipo <?php if(count($_POST) > 0){ //Já foi enviado o post }else{ //Ainda não foi enviado o post } ?> Não, não faça dessa forma. Pra que verificar o tamanho do Array $_POST se você possui o isset? Faça dessa forma: if(isset($_POST)) // Se existir o array post, pq ele não retorna undefined index. { // O seu código vem aqui. } :thumbsup: Compartilhar este post Link para o post Compartilhar em outros sites
visitante_php 0 Denunciar post Postado Março 23, 2012 Prezados, boa noite. Estou precisando dar um post para a mesma página, tem como? Nesse post são passadas variáveis e criadas sessões. Eu já estou passando ela para outra página, e está tudo ok. Mas, precisaria passar para a mesma página, ao invés de outra. Tem como? Desde já agradeço. eh somente questao de interpretacao de texto, nao tem nada relacionado a como enviar o post, e sim a onde enviar, portanto <form action="<?php echo $_SERVER['PHP_SELF'];?>" .... Compartilhar este post Link para o post Compartilhar em outros sites
ESerra 744 Denunciar post Postado Março 23, 2012 Não, não faça dessa forma. Pra que verificar o tamanho do Array $_POST se você possui o isset? Faça dessa forma: if(isset($_POST)) // Se existir o array post, pq ele não retorna undefined index. { // O seu código vem aqui. } :thumbsup: Simples, o tamanho te diz quantos elementos tem, o isset verifica se o $_POST existe, agora vem a questão, $_POST como superglobal SEMPRE existe, mesmo que esteja vazia. Jogue em um arquivo vazio o seguinte: if(isset($_POST)) // Se existir o array post, pq ele não retorna undefined index. { echo 'aqui'; } E veja se não vai retornar aqui. Compartilhar este post Link para o post Compartilhar em outros sites
Erick Plant 8 Denunciar post Postado Março 23, 2012 Tbm acho: eh somente questao de interpretacao de texto, nao tem nada relacionado a como enviar o post, e sim a onde enviar, portanto <form action="<?php echo $_SERVER['PHP_SELF'];?>" .... Compartilhar este post Link para o post Compartilhar em outros sites
Dii 15 Denunciar post Postado Março 23, 2012 o______________________________________________________________________________o. Faça o seguinte. :lol: <?php var_dump($_POST); ?> <form action="<?php echo $_SERVER['PHP_SELF']" method="post"> <input type="text" name="nome"/> <input type="submit" value="Enviar"/> </form> Agora veja o que ele vai te retornar quando você entrar na página >:D Compartilhar este post Link para o post Compartilhar em outros sites