Vérifier si pour une adresse email, le nom de domaine est en ligne et l'indiquer dans une DB

Réaliser un script qui détermine pour une adresse email si le nom de domaine existe en ligne

Une version simplifié SANS base de donnée existe ici return-email.php
Ton travail consite a ajouter la couche avec la base de donnée
Gestionnaire de db : adminer

 

1. Capture des données clients --> checkdnsinsertdb.php

Depuis un formulaire vers une base de données SQLite. Ecrire le code php pour insérer dans la db

Structure de la DB

Customer_List_Results
Input_Email UserName Domain Tld Is_Dns
toto@gmail.com toto gmail com  
toto@gmail.be toto gmail be  
toto@ulb.be toto ulb be  
toto@ulb.ag.be toto ulb ag.be  

--> Prendre en compte le cas toto@ulb.be et toto@ulb.ag.be au moment du split/explode

2 . Batch --> checkdnsbatch.php

A. CACHE

Il faut écrire le batch qui va aller vérifier en ligne si les ISP existent ou pas
Pour déterminer si le DNS existe ou pas, il faudra utiliser cette commande
checkdnsrr($domain.'.', 'MX') OR checkdnsrr($domain.'.', 'A') --> (on vérifie si le DNS a une entrée MX ou A)
Ecrire le code pour le check et l'insert du résultat true/false dans db

Common_Isp_Domains
Common_Isp_Url Is_Dns
gmail.com 0 ou 1
hotmail.com 0 ou 1
hotmail.fr 0 ou 1
hotmail.be 0 ou 1
msn.com 0 ou 1
outlook.com 0 ou 1
live.com 0 ou 1
yahoo.com 0 ou 1
yahoo.fr 0 ou 1
yahoo.nl 0 ou 1
telenet.be 0 ou 1
skynet.be 0 ou 1

B. les données clients

Aller voir dans le cache = db Common_Isp_Domains si Common_Isp_Url = Domain + Tld alors remplir Is_Dns avec la valeur 0 ou 1

Ensuite lancer le process en ligne pour les domaines non présent dans le cache
checkdnsrr($domain.'.', 'MX') OR checkdnsrr($domain.'.', 'A') --> (on vérifie si le DNS a une entrée MX ou A)
Ecrire le code pour le check et l'insert du résultat true/false dans db

Customer_List_Results
Input_Email UserName Domain Tld Is_Dns
toto@gmail.com toto gmail com 1
toto@gmail.be toto gmail be 0
toto@ulb.be toto ulb be 1
toto@ulb.ag.be toto ulb .ag.be 0

4. Afficher les résultats --> checkdnsdisplay.php
Dans un autre formulaire

Valid MX or A record Email Adresses Invalid MX or A record Email Adresses