Ir para conteúdo

POWERED BY:

Arquivado

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

Henrique Buzin

Ajax

Recommended Posts

olá galera estou começando no javascript ajax e queria pedir uma ajuda para o seguinte:

tenho um arquivo javascript que valida se tem @ e tal agora que verificar o dominio do e-mail entao queria que o ajax abrir-se um arquivo .php quando a pessoa selecionar email e ele tem dentro ja alguns comandos javascript e qunado ter tudo certo continua com o resto ok sem aparecer nada na url. Muito Obrigado!

 

arquivo php que vai valida o e-mail (v_email.php e método post)

<?php
$email = trim($_POST['email']);
function verifica_dns($email, $record = 'MX'){
$domain= explode('@',$email);
return checkdnsrr($domain[1], $record);
}
if(verifica_dns($email)){
header ("Location: index.php");
}else{
?>
<script language="javascript" type="text/javascript">
alert("O campo e-mail deve ser prenchido com um endereço de e-mail válido!");
document.cadastro.email.focus();
return false;
</script>
<?php
}

?>

 

arquivo que faz as verificaçoes .js

 

function Validacao_login() {
if(document.login.email.value==""){
alert("O campo e-mail deve ser prenchido!");
document.login.email.focus();
return false;
}
if(document.login.senha.value==""){
alert("O campo senha deve ser prenchido!");
document.login.senha.focus();
return false;
}
if(document.login.senha.value.length < 4){
alert("O campo senha deve conter no mínimo 4 dígitos!");
document.login.senha.focus();
return false;
}
if(document.login.senha.value.length > 255){
alert("O campo senha deve conter no máximo 255 dígitos!");
document.login.senha.focus();
return false;
}
}
function Validacao_cadastro() {
if(document.cadastro.nome.value==""){
alert("O campo nome deve ser prenchido!");
document.cadastro.nome.focus();
return false;
}
if(document.cadastro.sobrenome.value==""){
alert("O campo sobrenome deve ser prenchido!");
document.cadastro.sobrenome.focus();
return false;
}
if(document.cadastro.email.value==""){
alert("O campo e-mail deve ser prenchido!");
document.cadastro.email.focus();
return false;
}
if((document.cadastro.email.value.indexOf("@")==-1) || (document.cadastro.email.value.indexOf(".")==-1) || !(document.cadastro.email.value.indexOf(" ")==-1)){
alert("O campo e-mail deve ser prenchido com um endereço de e-mail válido!");
document.cadastro.email.focus();
return false;
}
if(document.cadastro.senha.value==""){
alert("O campo senha deve ser prenchido!");
document.cadastro.senha.focus();
return false;
}
if(document.cadastro.senha.value.length < 4){
alert("O campo senha deve conter no mínimo 4 dígitos!");
document.cadastro.senha.focus();
return false;
}
if(document.cadastro.senha.value.length > 255){
alert("O campo senha deve conter no máximo 255 dígitos!");
document.cadastro.senha.focus();
return false;
}
if(document.cadastro.dia_nascimento.value==""){
alert("O campo dia deve ser selecionado!");
document.cadastro.dia_nascimento.focus();
return false;
}
if(document.cadastro.mes_nascimento.value==""){
alert("O campo mês deve ser selecionado!");
document.cadastro.mes_nascimento.focus();
return false;
}
if(document.cadastro.ano_nascimento.value==""){
alert("O campo ano deve ser selecionado!");
document.cadastro.ano_nascimento.focus();
return false;
}
if(document.cadastro.sexo[0].checked == false && document.cadastro.sexo[1].checked == false){
alert("O campo sexo deve ser selecionado");
return false;
}
}
e arquivo ajax
// Variável que receberá o objeto
XMLHttpRequest var req; function validarDados(campo, valor){
// Verificar o Browser // Firefox, Google Chrome, Safari e outros
if(window.XMLHttpRequest) {
req = new XMLHttpRequest();
}
// Internet Explorer
else if(window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
}
// Aqui vai o valor e o nome do campo que pediu a requisição.
var url = "ajax/v_email.php?email="+email+"&valor="+valor;
// Chamada do método open para processar a requisição
req.open("POST", url, true);
// Quando o objeto recebe o retorno, chamamos a seguinte função;
req.onreadystatechange = function() {
// Exibe a mensagem "Verificando" enquanto carrega
if(req.readyState == 1) { document.getElementById('campo_' + campo + '').innerHTML = 'Verificando...'; }
// Verifica se o Ajax realizou todas as operações corretamente (essencial)
if(req.readyState == 4 && req.status == 200) {
// Resposta retornada pelo validacao.php
var resposta = req.responseText;

Compartilhar este post


Link para o post
Compartilhar em outros sites

normalmente não é recomendando passar javascript por ajax

 

outra coisa se voce utilizar o header do php não vai funcionar..

 

 

se o que você quer é simplesmente validar se o dominio do email digitado é valido então voce deve fazer o seguinte:

 

ajax.js  
              $.ajax({
                  url: "logica.php", 
                  type:"POST",T)
                  data:{email:"joao@exemplo.com"} 
                }).success(function(resultado) { 
                     if(resultado.ok){
                        alert("Email validado");
                     }else{
                        alert("Dominio inválido");
                     }
                       
                }).error(function(){ // se der erro entra aqui
                        alert("Desculpe, algum erro aconteceu");
                }); 
logica.php


<?php
     $dominios = array("globo.com", "exemplo.com");


    $email = $_REQUEST[email];

    
    $token = explode("@", $email);    
    foreach($dominios as $dominio){
     
      if($dominio == strtolower($token[1])){
        echo '{ok:true}';
      }

    }

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.