Verificar se email existe
Existe alguma função ou algum serviço externo que podemos utilizar no PHP para verificar se email existe ou se é valido?
Marcio Araujo
Curtidas 0
Respostas
Ronaldo Lanhellas
20/11/2014
Existe alguma função ou algum serviço externo que podemos utilizar no PHP para verificar se email existe ou se é valido?
1 - Para validar o email você pode usar expressões regulares, assim você valida a SINTAXE do que foi digitado.
if(!eregi(“^([a-z0-9_]|\\-|\\.)+@(([az0-9_]|\\-)+\\.)+[a-z]{2,4}$”,”$email”)){
die(“E-mail invalido.”);
}
2 - Mas para validar se o email já existe, há duas vertentes:
# Se você vai checar apenas na sua base de dados é muito tranquilo, apenas fazer um SELECT COUNT(*) resolve, antes de inserir o novo registro
# Porém se você quiser checar se aquele email existe em um universo de provedores (bol, uol, gmail yahoo, terra...) você terá um grande problema a enfrentar. Confesso que nunca vi um sistema que faça isso, é uma ótima ideia para uma tese de doutorado hehehe.
GOSTEI 0
Marcio Araujo
20/11/2014
A minha intenção, por curiosidade mesmo, foi essa de entra no universo de provedores, até hoje não vi nada quanto a isso, nenhum web-service que ofereça essa funcionalidade, é uma ideia para quem não fez ainda.
sobre as duas opções, a primeira, de cima para baixo, já tinha vistos exemplos, mas a segunda não, que pega os dados do banco e confere.
sobre as duas opções, a primeira, de cima para baixo, já tinha vistos exemplos, mas a segunda não, que pega os dados do banco e confere.
GOSTEI 0
Ronaldo Lanhellas
20/11/2014
A minha intenção, por curiosidade mesmo, foi essa de entra no universo de provedores, até hoje não vi nada quanto a isso, nenhum web-service que ofereça essa funcionalidade, é uma ideia para quem não fez ainda.
sobre as duas opções, a primeira, de cima para baixo, já tinha vistos exemplos, mas a segunda não, que pega os dados do banco e confere.
sobre as duas opções, a primeira, de cima para baixo, já tinha vistos exemplos, mas a segunda não, que pega os dados do banco e confere.
Então, a segunda que "pega" os dados do próprio banco, para checar o email, é muito mais simples e rápida de ser implementada.
GOSTEI 0
Marcio Araujo
20/11/2014
Como faço, basta fazer um select no campo?
GOSTEI 0
Ronaldo Lanhellas
20/11/2014
Sim, pode ser assim:
Se o resultado do SELECT acima for > 0, significa que já existe o email cadastrado.
SELECT count(*) FROM esquema.usuario WHERE email = :emailParametro
Se o resultado do SELECT acima for > 0, significa que já existe o email cadastrado.
GOSTEI 0
Marcio Araujo
20/11/2014
Beleza, e a outra forma hein, será que já existe solução. se achar, não esquece de divulgar, por favor.
GOSTEI 0
Ronaldo Lanhellas
20/11/2014
Beleza, e a outra forma hein, será que já existe solução. se achar, não esquece de divulgar, por favor.
Bom, pensei aqui em uma solução que pode ser aplicada de forma rápida: Você pode enviar uma mensagem qualquer para o email que você quer testar se ele é válido/existe, se tiver um retorno positivo então ele existe caso contrário pode ser que não exista. Digo "pode" pois há algumas variáveis que podem influenciar no retorno, como por exemplo: o link do provedor está fora do ar ou congestionado.
GOSTEI 0
Marcio Araujo
20/11/2014
Eu acho que entendi, caso não dê certo, é possivel ter uma resposta? quando enviamos um email, erramos, geralmente recebemos um email informando a falha.
GOSTEI 0
Ronaldo Lanhellas
20/11/2014
Eu acho que entendi, caso não dê certo, é possivel ter uma resposta? quando enviamos um email, erramos, geralmente recebemos um email informando a falha.
Isso mesmo.
GOSTEI 0
Marcio Araujo
20/11/2014
Entendi, se for desse jeito é uma outra forma de tentar.
GOSTEI 0
Fabio Santos
20/11/2014
É mais viavel fazer isso atraves de uma consulta no banco, sem duvida se existir um serviço como esse devem cobrar um preço bem razoavel.
GOSTEI 0
Marcio Araujo
20/11/2014
É mais viavel fazer isso atraves de uma consulta no banco, sem duvida se existir um serviço como esse devem cobrar um preço bem razoavel.
Quem fizer, pode dar uma boa grana.
GOSTEI 0
Marcus Santos
20/11/2014
Bom dia Ronaldo,
Encontrei algumas soluções interessantes, ainda estou testando !!!
Por favor pode me ajudar a testar ?
https://code.google.com/p/php-smtp-email-validation/
https://github.com/hbattat/verifyEmail
http://www.phpclasses.org/package/6650-PHP-Check-if-an-e-mail-is-valid-using-SMTP.html#information
http://www.phpclasses.org/package/1519-PHP-Check-the-existence-of-an-email-address-via-SMTP.html
Abs
Encontrei algumas soluções interessantes, ainda estou testando !!!
Por favor pode me ajudar a testar ?
https://code.google.com/p/php-smtp-email-validation/
https://github.com/hbattat/verifyEmail
http://www.phpclasses.org/package/6650-PHP-Check-if-an-e-mail-is-valid-using-SMTP.html#information
http://www.phpclasses.org/package/1519-PHP-Check-the-existence-of-an-email-address-via-SMTP.html
Abs
GOSTEI 0
Marcio Araujo
20/11/2014
Marcus os links referente a validação de email fazem a verificação junto as provedoras?
GOSTEI 0
Ronaldo Lanhellas
20/11/2014
Bom dia Ronaldo,
Encontrei algumas soluções interessantes, ainda estou testando !!!
Por favor pode me ajudar a testar ?
https://code.google.com/p/php-smtp-email-validation/
https://github.com/hbattat/verifyEmail
http://www.phpclasses.org/package/6650-PHP-Check-if-an-e-mail-is-valid-using-SMTP.html#information
http://www.phpclasses.org/package/1519-PHP-Check-the-existence-of-an-email-address-via-SMTP.html
Abs
Encontrei algumas soluções interessantes, ainda estou testando !!!
Por favor pode me ajudar a testar ?
https://code.google.com/p/php-smtp-email-validation/
https://github.com/hbattat/verifyEmail
http://www.phpclasses.org/package/6650-PHP-Check-if-an-e-mail-is-valid-using-SMTP.html#information
http://www.phpclasses.org/package/1519-PHP-Check-the-existence-of-an-email-address-via-SMTP.html
Abs
Meu caro, infelizmente não vou poder ti ajudar a testar, isso é com você. O que posso fazer e lhe auxiliar caso ocorra algum erro.
GOSTEI 0
Marcio Araujo
20/11/2014
Chegou a entender sobre os links Ronaldo?
Marcus os links referente a validação de email fazem a verificação junto as provedoras?
GOSTEI 0
Ronaldo Lanhellas
20/11/2014
Chegou a entender sobre os links Ronaldo?
Marcus os links referente a validação de email fazem a verificação junto as provedoras?
Não, estou sem tempo para validar todos os links.
GOSTEI 0
Marcio Araujo
20/11/2014
Tranquilo. :-)
GOSTEI 0
Fabio Santos
20/11/2014
As melhores formas é fazer no banco e utilizando javascript, menos complicadas.
GOSTEI 0
Marcio Araujo
20/11/2014
Pensando é a melhor forma realmente e "simples".
GOSTEI 0