Endereço Após Usar "action"
#1
Posted 08/11/2007, 10:50
Vou dar um exemplo pra melhorar a pergunta:
1) estou numa página de um formulário de cadastro;
2) ao clicar em enviar, vai pra página "cadastro_action.php";
3) a acão faz o cadastro e retorna pra página "minhaconta.php" (usando "require")
4) a página "minhaconta" é aberta, mas o endereço fica aparecendo "cadastro_action.php";
Como fazer com que no campo do endereço fique o endereço da página que foi aberta, no caso "minhaconta.php"?
Além de ficar "mais correto" tem o problema de no caso do usuário tentar atualizar a página e aí acaba ativando a página "action" novamente e duplicando o cadastro.
Se alguém der uma dica pra resolver o problema, agradeço.
#2
Posted 08/11/2007, 12:35
Faz um hader do tipo refresh
Ao invés de utilizar
require("minhaconta.php");
experiente trocar por
header("refresh: 3; url=minhaconta.php");
claro que terá que verificar se o minhaconta não utiliza nada do cadastro_action.php, caso precise de algo, passe por $_SESSION.
espero que tenha compreendido a idéia.
[]'s
#3
Posted 08/11/2007, 14:49
Só uma curiosidade: o que significa o número 3 alí no código?
#4
Posted 08/11/2007, 18:58
Significa 3 segundos.Savior, vou testar pra ver.
Só uma curiosidade: o que significa o número 3 alí no código?
[]s Até mais
#5
Posted 09/11/2007, 10:05
Paulo, mas qual o objetivo desses 3 segundos?
#6
Posted 09/11/2007, 10:14
Terá um delay de 3 segundos até que a requisição da página seja feita. Até maisPaulo, mas qual o objetivo desses 3 segundos?
#7
Posted 12/11/2007, 10:22
E se passar os 3 segundos e a conexão não foi feita ainda? Dá algum erro?
#8
Posted 12/11/2007, 10:34
tipo...
carregou
1...
2...
3...
CARREGOU!!!
MCP .NET WebApplications C#
MCP SQL Server 2000
Desenvolvedor Delphi/PHP
#9
Posted 12/11/2007, 11:56
É bem provável que você tenha que segurar o envio da página, tanto para garantir a execução, mas também para evitar erros na página. Isso pode ser feito usando as funções de buffer do PHP. ob_start() e ob_end_flush().
Yeah I do have some stories, and it's true I want all the glory ...
#10
Posted 12/11/2007, 13:54
É segunda feira, disfarça ehauiehauihae
MCP .NET WebApplications C#
MCP SQL Server 2000
Desenvolvedor Delphi/PHP
#11
Posted 12/11/2007, 14:20
#12
Posted 12/11/2007, 16:10
ps.: acho que nem enviar o header vai, ele vai dar erro fatal.
Edição feita por: bimonti, 12/11/2007, 16:11.
Yeah I do have some stories, and it's true I want all the glory ...
#13
Posted 13/11/2007, 09:59
Bimonti, já que estamos nesse assunto de "action", vc sabe se existe alguma maneira de bloquear a volta da página (depois de usar action) usando o botão do navegador? Isto seria pra evitar que o usuário consiga acessar o action novamente usando o botão do navegador.
Edição feita por: Tigre, 13/11/2007, 10:04.
#14
Posted 13/11/2007, 14:17
Quando você enviar o formulário, vai armazenar esses dados na variável super global $_POST ... então depois de processar o formulário uma vez, use unset($_POST);, assim os dados não vão existir mais e o usuário pode voltar quantas vezes quiser que não vai duplicar cadastros por exemplo. Lógico que você vem que verificar no cadastro se os dados de $_POST estão preenchidos.
Yeah I do have some stories, and it's true I want all the glory ...
#15
Posted 13/11/2007, 14:36
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)