Ir para conteúdo
Fórum Script Brasil
  • 0

Campos De Um Formuário Retornam Em Branco.


Guest --Evandro Fontes --

Pergunta

Guest --Evandro Fontes --

Olá pessoal, criei uma funçaozinha básica pra exibir um alert e redirecionar pra uma determinada página. Em uma das páginas de cadastro, quando a pessoa digite um email inválido, ele dá o alerta "Email inválido". E volta pra página do formulário, só qeu ao voltar para a página ,todos os campos estão em branco de novo... alguém poderia me ajudar?

A seguir minha função, e como eu estou usando:

:blink:function ShowBox($mensagem="", $redir = "", $parar = false){

if($mensagem == ""){

exit;

}

$mensagem = str_replace(chr(39), "\'", $mensagem);

$txt="<script language=javascript>

alert('$mensagem'); \n";

if($redir != ""){

if($redir == "-1"){

$txt .="history.back(); \n";

}else{

$txt .="document.location='$redir'";

}

}

$txt .="</script>";

echo $txt ;

if( is_bool($parar) ){

if( $parar == true){

exit;

}

}

}

Eu a chamo da seguinte forma:

if(!validaEmail($email)){

ShowBox("O email informado é inválido, por favor verifique","-1", true);

}

Onde: validaEMail() é uma funçao de validação de emails.

e $email a variável contendo o email digitado...

Já tentei de td imáginável.. mas nada funfou até agora ...

Se alguém souber o que possa ser... ficarei grato..

Abraços.

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0
Guest --Evandro Fontes --

Mas ai eu vou ter que fazer um teste em cada campo, pra ver se existe ou não as sessões.... geralmente quando você preenche um formulário e volta pelo navegador ele está td preenchido...

Eu vi essa função "ShowBox" em asp, e converti pro php... e no asp ela não aapgava os campos.... deve ser alguma configuração no php.. ou algum comando.. só não sei qual...

Essa idéia de gravar nas sessões já me apssou pela cabeça... mas seria um trabalho um tanto que desnecessário.. se existir uma forma dem anter esses valores, deve ser melhor do que fazer esse ajsutes das sessões ^^

Link para o comentário
Compartilhar em outros sites

  • 0

Os dados não são apagados quando você volta para a pagina usando o botão voltar do navegador, ou voltar do botao direito mouse, quando você redireciona para a pagina ela carrga novamente e limpa o formulario.

Link para o comentário
Compartilhar em outros sites

  • 0

Mas ai que está, eu não recarrego denovo a página, eu volto usando as funções do javascript mesmo..

history.go(1-);

ou

history.back();

Tentei as duas e deu a mesmo coisa... Não deveria ser assim, se você faz uma página puro HTML e coloca essas funç~eos ela preserva os valores dos campos...

Link para o comentário
Compartilhar em outros sites

  • 0

Se está apagando é porque a página está sendo recarregada, isso pode acontecer porque você está usando algum tipo de autenticação (as vezes acontece) ou porque você definiu para não existir cache da página...

Link para o comentário
Compartilhar em outros sites

  • 0
Se está apagando é porque a página está sendo recarregada, isso pode acontecer porque você está usando algum tipo de autenticação (as vezes acontece) ou porque você definiu para não existir cache da página...

Tem a autenticação do sistema de login, verifico se existe a sessão 'logado' ...Eu procurei algo do tipo, sei lá algum header ou outra função para que não fosse "recarregada".. mas nada.. fiz um teste...

Link para o comentário
Compartilhar em outros sites

  • 0

Po velho tenta esse script aqui ele é todo em javascript e funciona direitinho:

esse código só valida o email ele verifica se o email é valido ou não.

<html>
<head>
&lt;script language="javascript" type="text/javascript">
<!--
// funcao que valida email  
function validaMail() {
    var email = document.FormAss.email.value;
    var car = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
    if(!(car.test(email))) {
        document.getElementById("emailV").innerHTML = "email invalido!";
        document.FormAss.email.style.background = "#FFB9BB";
        document.FormAss.email.style.border = "1px solid #FF9396";
    } else {
        document.getElementById("emailV").innerHTML = "valido!";
        document.FormAss.email.style.background = "#BFFFAA";
        document.FormAss.email.style.border = "1px solid #33FF66";
        FormAss.submit();
    }
}
//-->
</script>
</head>

<body>
<h3><span id="emailV"></span></h3>
<form name="FormAss" method="get">
Email: <input type="text" name="email" size="40">
<input type="button" value="Enviar" onclick="validaMail()">
</form>

<hr>

<?php
$email = $_GET['email'];

echo $email;
?>
</body>
</html>

Ta ai espero que eu tenha ajudado.

Qual quer duvida poste aqui no forum!!!

Falows!!! B)

Editado por Diego.G.A
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...