Zepp 0 Denunciar post Postado Junho 21, 2015 Bom dia! Sou novo tanto no fórum quanto um pouco menos em PHP e acredito que minha dúvida seja algo simples: estou tentando desenvolver um formulário de cadastro simples, com um campo de usuário, email, senha e confirmação de senha, inclusive um recaptcha. Até aqui, tudo bem, mas na hora do envio do Form, mesmo após a página apresentar uma mensagem de erro em Alert ocorre o redirecionamento para a página .php do action do Form, ou seja, ao invés da mensagem de erro barrar o envio (tentei adicionar os comandos die, return false e exit na página.php), o mesmo ainda ocorre. Pesquisei sobre isso e a solução mais viável que encontrei foi utilizar Ajax o qual resolveu meu problema do envio incorreto, mas se não me engano retornava os Alerts de forma incorreta ao invés de simplesmente de somente realizar o envio do Form. Se possível gostaria de uma orientação de como poderia resolver esse problema do Form de uma maneira simples, pois minha única expectativa é que ao ocorrer um erro na validação o mesmo seja apresentado em um Alert e depois só então que todos os campos estiverem validados ele seja enviado e redirecionado para a página PHP. Essa é a idéia. Segue abaixo a expressão que citei linhas a cima e o comando na linha final não cumpre com o esperado. Desde já, obrigado! if(@!ereg("^[a-zA-Z0-9]{4,14}$", $login)){ $error = "<script type=\"text/javascript\"> alert ('Digite apenas letras e números.') </script>"; echo "$error"; die; Compartilhar este post Link para o post Compartilhar em outros sites
Zepp 0 Denunciar post Postado Junho 22, 2015 if(@!ereg("^[a-zA-Z0-9]{4,14}$", $login)){ header("login.php?connect=error"); //Ou se quiser: login.php?ltrasnmbrs=apenas_letras_e_nmrs } else { //Caso não, adicione as ações de conexão ao usuário. } No formulário: <? if (isset($_GET['connect'])) { //se existe a variável connect no URL da página, $_GET['suavariablenourl'] if ($_GET['connect'] == "error") { echo "Conexão com usuário falhada. Motivo: nome de usuário/senha estão inválidos."; //Ações... //Isso é apenas um exemplo. //Para caso o erro seja de captcha, você pode fazer uma variável no URL assim: // login?captcha=fail&login=error // Se você não sabe, $_GET[''] pode pegar variáveis dentro do URL. // Outro exemplo de variável em URL: index.php?variable=hi // Se deseja adicionar +1 de uma variável, você deve acrescentar &. // index.php?variable=hi&outravariable=hiii } ?> Opa, obrigado! Vou tentar como orientou. Compartilhar este post Link para o post Compartilhar em outros sites