Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola alguém pode me ajudar como pegar o stats usando o curl de quando o email ja é cadastrado

oxe não entendi nada sua resposta tipo quero que alguem me ajude assim use a funçao tal ou faça ou estude sua resposta nao entendi nada desculpa
Pesquisa por ajax e evento onblur.
Olá,
Para a receita de hoje vamos precisar de:
1- JavaScript
1 - Campo HTML cujo tenha um seletor para fácil acesso
<input type="email" name="email" id="meu-email" />
1 - Evento de blur no JS que monitora aquele seletor:
document.getElementById("meu-email").addEventListener("blur", function() {
//
});
1 - Requisição ajax dentro da função do blur.
[Noções de Ajax.](https://github.com/gabrieldarezzo/desafiosInternos/tree/master/ajax#guia-definitivo-ajax)
Obs:
Back-end a gosto com resposta true/false se E-mail já existe
Modo de preparo:
Junte todos os ingredientes em uma pagina html:
<!DOCTYPE HTML>
<html lang="pt_BR">
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<input type="email" name="email" id="meu-email" />
<input type="text" name="nome" />
<script type="text/javascript">
document.getElementById("meu-email").addEventListener("blur", function() {
var emailField = this;
const emailValue = this.value;
emailField.style = "";
var ajax = new XMLHttpRequest();
ajax.open('GET', 'email_unique.php?email=' + emailValue, true);
ajax.send();
ajax.onreadystatechange = function() {
if(ajax.readyState == 4 && ajax.status == 200) {
if(ajax.responseText == 'false') {
emailField.style = "border: 1px solid red;";
}
}
}
});
</script>
</body>
</html>
Use o seu Back-End a gosto, no meu caso fiz em php:
<?php
// Simula uma consulta SQL verificando ... WHERE email LIKE '%{$email}%'..., retornando apenas Booleano
function isUniqueEmail($emailToCheck) {
$emailsInDb = [
'darezzo.gabriel@gmail.com',
'gabrieldarezzo@gmail.com',
'gabrieldarezzo@yahoo.com.br',
'hadoopen@gmail.com',
];
return in_array($emailToCheck, $emailsInDb);
}
$email = (isset($_GET['email'])) ? $_GET['email'] : '';
if($email == '') {
die('false');
}
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
die('false');
}
//Valida se existe outro E-mail já cadastrado
if(!isUniqueEmail($email)) {
die('false');
}
//Chegou até aqui ok, ta liberado ta tudo limpo ta tudo validado...
echo 'true';
Sirva no seu deploy.
Obviamente é uma receita caseira, caso queira vender externamente é sempre legal validar mellhor o E-mail.@gabrieldarezzo acabei de ver seu tutorial lá no github, muito loko, parabéns pela didática.
Quando perder o foco do campo, dispare uma requisição em ajax para o e BD, ai basta pegar o retorno e verificar.