Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

filipeamsantos

clicar botão SUBMIT > regista na BD e depois ativar URL nova pagin

Recommended Posts

Bom Dia
a Todos

Tenho um FORM com um conjunto de dados que faço inserir numa base dados. Esta parte está resolvida... e sem problemas.... o que escrevo nas caixas texto/combobox/ etc, quando clico no botão com a função SUBMIT, ele regista os dados na base de dados.

A minha questão, é:

Como é que posso simultaneamente ao clicar no botão de SUBMIT e insiro na tabela os dados e depois faço abrir uma nova página para por exemplo dizer que tudo está registado com sucesso e eventualmente mostar outros dados?



De uma só vez ele regista na base de dados e redireciona-me para uma nova página

OBRIGADO a TODOS


*****************************
form name="MyFormID" method="POST" id="MyFormID" >

<input type="hidden" name="MM_insert" value="MyFormID">

..............

.........................

.................................

.................

..........


< input type="submit" name="MyFormID" id="btn_form2" value="registar">

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi muito bem a sua dúvida.

Primeiramente, o form já redireciona para um endereço. O endereço pode ser a mesma página ou uma diferente, basta definir no atributo action do form.

<form action="url desejada" >


E a segunda, qual o problema em exibir os dados na mesma página em que você recebe os dados do form? Se você apenas quer que abra uma nova guia/aba/janela, utilize target="_blank"

<form action="url desejada" target="_blank" >

Lembrando que a definição de target pode ser utilizada somente em páginas transitional (para HTML 4)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu acredito que ele quer que seja feito um redirecionamento.

 

Neste caso eh só usar a função header ('Location : suapagina2.php');

 

so q passando na URL por get os dados do cara.

Se não for assim, pode usar curl

 

Eu acredito que ele quer que seja feito um redirecionamento.

 

Neste caso eh só usar a função header ('Location : suapagina2.php');

 

so q passando na URL por get os dados do cara.

Se não for assim, pode usar curl

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa Noite

 

Antes de mais obrigado pela vossa atenção...

 

Quando eu coloco no \\\\\ <form action="url desejada" target="_blank" > \\\\\\\\\\\ o FORM apenas me redireciona para o novo URL, mas como tenho nesse mesmo FORM dados que quero que sejam inseridos numa tabela de base de dados, ele não executa essa operação...

 

Ou seja, ao mudar ACTION para uma URL e não faz INSERT na BDados...

 

Como faço isso em simultâneo???

 

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa Noite

 

Antes de mais obrigado pela vossa atenção...

 

Quando eu coloco no \\\\\ <form action="url desejada" target="_blank" > \\\\\\\\\\\ o FORM apenas me redireciona para o novo URL, mas como tenho nesse mesmo FORM dados que quero que sejam inseridos numa tabela de base de dados, ele não executa essa operação...

 

Ou seja, ao mudar ACTION para uma URL e não faz INSERT na BDados...

 

Como faço isso em simultâneo???

 

 

Obrigado

E pq na "url desejada" vc não faz os dois ?

 

form_html --> submete_dados --> "url desejada" --> insere_banco_dados e

--> apresenta_mensagem

Compartilhar este post


Link para o post
Compartilhar em outros sites

e como faço isso com a função SUBMIT?

 

Quando foi redirecionado para a nova pagina, queria que os dados já tivessem escritos na base de dados de forma poder na pagina para onde faço o redirect apresentar os dados listados... não sei se me fiz entender...

 

VOu tentar simplificar:

 

O que posso adicionar neste código, de forma que o botão faça o SUBMIT e me leve para uma nova página?

É possível?

 

 

|||||||| <INPUT type="submit" value="registar" name="MyFormID"> |||||||||

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala ai Filipe

Quando você cria um button, automaticamente vai ser criado um form

onde vai ter um action, como mostra abaixo, esse action é que vai levar os registros pra o sua banco de dados, ou seja você vai adicionar sua pagina em php que tera a instrução para inserir os dados que vai estar dentro desse action.

 

<form id="form2" name="form1" method="post" action="exemplo_caminho_da_pagina.php">

dentro dessa pagina em php, no final da instrução de envio dos dados voce tera que chamar os resultados redirecionando pra outro pagina assim

 

echo '<script type="text/javascript">  
		 alert("Registro enviado com Sucesso!!!"); </script>';
			
	 //Atualize a página
echo 
'<script type="text/javascript">location.replace("http://exemplo_chama_a_pagina_de_resultados.php"); 
 
 	     </script>';

Se tiver duvidas eu te passo um exemplo no passo a passo .

Compartilhar este post


Link para o post
Compartilhar em outros sites

e como faço isso com a função SUBMIT?

 

Quando foi redirecionado para a nova pagina, queria que os dados já tivessem escritos na base de dados de forma poder na pagina para onde faço o redirect apresentar os dados listados... não sei se me fiz entender...

 

VOu tentar simplificar:

 

O que posso adicionar neste código, de forma que o botão faça o SUBMIT e me leve para uma nova página?

É possível?

 

 

|||||||| <INPUT type="submit" value="registar" name="MyFormID"> |||||||||

 

No final da página da que recebe os dados do FORM, faça assim:

 

echo '<script type="text/javascript">alert("os dados foram adicionados com sucesso");</script>' ;

 

// SUBSTITUA http:// google.com.br pela página que você quer que o navegador vá

header('Location: http://google.com.br');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiramente, os cabeçalhos de uma página (header) devem ser invocados/enviados antes de qualquer tipo de output. Se inserir um alert em javascript, o header já não foi invocado antes do output. Pense nisso.

 

http://stackoverflow.com/questions/16626439/php-cookies-and-header-location-cannot-modify-header-information-headers-al

 

 

 

[...]Quando você cria um button, automaticamente vai ser criado um form[...]

A não ser que esteja utilizando um editor wysiwyg, isso não ocorre. Caso estiver usando, não é aconselhado.

 

Editotres wysiwyg podem facilitar o processo inicial. Entretanto, poluem o código e podem gerar erros simples por uma não boa interpretação do comando desejado.

 

Ao problema original. Acredito que você esteja tendo uma dificuldade por não entender de programação em PHP. Você pode ter um header informando um redirecionamento na página aonde cadastra os dados, entretanto, não pode haver nenhum tipo de saída antes desse header.

 

Assim, você removerá o action da página, adicionando apenas um #.

<form action="#" >

Isso indica que ele será enviado para "si mesmo". Após o código de cadastro, antes de qualquer tipo de output, realize o redirecionamento. Na próxima página, basta exibir os dados.

 

Outra forma é mover o código de cadastro para a página que somente exibiria os dados. Nesse caso, você manteria o action para a outra página.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiramente, os cabeçalhos de uma página (header) devem ser invocados/enviados antes de qualquer tipo de output. Se inserir um alert em javascript, o header já não foi invocado antes do output. Pense nisso.

 

http://stackoverflow.com/questions/16626439/php-cookies-and-header-location-cannot-modify-header-information-headers-al

 

 

A não ser que esteja utilizando um editor wysiwyg, isso não ocorre. Caso estiver usando, não é aconselhado.

 

Editotres wysiwyg podem facilitar o processo inicial. Entretanto, poluem o código e podem gerar erros simples por uma não boa interpretação do comando desejado.

 

Ao problema original. Acredito que você esteja tendo uma dificuldade por não entender de programação em PHP. Você pode ter um header informando um redirecionamento na página aonde cadastra os dados, entretanto, não pode haver nenhum tipo de saída antes desse header.

 

Assim, você removerá o action da página, adicionando apenas um #.

<form action="#" >

Isso indica que ele será enviado para "si mesmo". Após o código de cadastro, antes de qualquer tipo de output, realize o redirecionamento. Na próxima página, basta exibir os dados.

 

Outra forma é mover o código de cadastro para a página que somente exibiria os dados. Nesse caso, você manteria o action para a outra página.

 

Faça isso e veja pra onde será feito o redirect:

 

<?php    
    $i = 10;
    if($i > 10)
        header('Location: http://www.google.com.br');
    else
        header('Location: http://www.raphael.eti.br');
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual a finalidade disto? Não preciso testar para saber o resultado. E acima de tudo, o que isso tem haver de relevante com o meu post?

Compartilhar este post


Link para o post
Compartilhar em outros sites


// SOLUCAO DADA POR EMAIL

 

<?php

if(!empty($_POST['MyFormID'])){

echo '<script type="text/javascript">alert("Dados Gravados com sucesso");</script>';

$_POST = null ;

$disabled = ' disabled="disabled" ';

header('Location: http://www.google.com');///////// ALTERAR AKI PARA SEU ENDERECO

}

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.