Bonjour
(suite de ce post)
j'ai quand même un souci de connexion à la librairie voici le message :
apparemment c'est le dossier MAil qui n'existe pas, mais où le trouver? où le placer? je sèche!Warning: main(Mail/RFC822.php): failed to open stream: No such file or directory in c:\program files\easyphp1-8\www\.....
voici le script pour ceux qui voudront bien me filer un piti coup de main
merci bien d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112 <body bgcolor="white"> <?php set_include_path(get_include_path() . ";c:\Program Files\EasyPHP1-8/php\pear"); ?> <form action="test_email.php" method="post"> <input type="submit" value="Valider cet email"> <input type="text" name="email" value=""> </form> <?php $mail = $_POST['email']; require 'PEAR.php'; //Appel de la librairie PEAR ../../php/pear/PEAR/ require 'Mail/RFC822.php'; //Appel de la librairie Mail_RFC822 $lo_mail = Mail_RFC822::parseAddressList($mail, NULL, FALSE); if(PEAR::isError($lo_mail)){ //$lo_mail est une erreur //l'adresse e-mail n'est donc pas valide echo $mail.'n\'est pas une adresse e-mail valide'; die(); } elseif ($lo_mail[0]->host=='localhost'){ //le nom de domaine de cette adresse est localhost //dans cet exemple on refuse ce genre de mail ! echo $mail.'n\'est pas une adresse valide'; die(); } else { echo $mail.' est une adresse e-mail SYNTAXIQUEMENT valide'; } //$lo_mail contient l'adresse e-mail stockée dans un tableau ?> </body> </html> <?php /* Voici le contenu de $lo_mail Array ( [0] => stdClass Object ( [personal] => [comment] => Array ( ) [mailbox] => john.doe [host] => example.org ) )*/ $ls_domaine=$lo_mail[0]->host; //$ls_domaine contient example.org ?> <?php //Rappel : La valeur ci dessous a normalement été initialisée dans la partie 2 du script $ls_domaine = 'developpez.com'; //Inscrivez dans ce tableau les serveurs de noms de votre FAI. $la_serveur_de_nom=array( '212.27.32.5', //Adresse IP du serveur de noms primaire de mon FAI (Free) '212.27.32.176', //Adresse IP du serveur de noms secondaire de mon FAI (Free) '212.27.32.177' //Adresse IP du serveur de noms tertiaire de mon FAI (Free) ); //Appel de la bibliothèque PEAR : Net DNS require_once 'Net/DNS.php'; //Les fonctions ne peuvent pas s'appeler de façon statitique cette fois //On crée donc une instance de classe Net_DNS_Resolver $lo_resolver = new Net_DNS_Resolver(); //Décommentez cette ligne pour afficher le debuggage //$lo_resolver->debug=1; //On précise nos noms de serveurs $lo_resolver->nameservers=$la_serveur_de_nom; //On lance une requête, on précise MX pour identifier un éventuel serveur de mail $lo_response = $lo_resolver->query($ls_domaine,'MX'); //on teste la réponse if ($lo_response) { foreach ($lo_response->answer as $lo_rr) { //On affiche le résultat pour l'exemple, mais c'est inutile dans l'aboslu $lo_rr->display(); echo "Nom de serveur de mail $ls_domaine valide"; } } else { echo "Nom de serveur de mail $ls_domaine inconnu"; } ?> <form action="test_email.php" method="post"> <input type="submit" value="Valider cet email"> <input type="text" name="email" value=""> </form>
Partager