Page 1 sur 1

comment vérifier une adresse mail ?

Posté : 29 juin 2006, 16:05
par yank
Salut à tous

Je cherche à savoir comment vérifier une adresse mail...

J'ai un script de recommandation sur mon site qui fonctionne bien si on rentre une adresse du genre [email protected] ... par contre si je mets blou tout court, du coup j'ai un message d'erreur qui s'affiche mais pas "joliment" je dirai :lol:

Voila ce que ça me dit :

Code : Tout sélectionner

Warning: mail() [function.mail]: Invalid mail. to = [blou] in /mnt/128/sdb/2/c/blingbling/pages/rec.php on line 11
Alors voila si quelqu'un veut bien m'indiquer un lien vers un tuto assez simple pour corriger ce problême je suis preneur !

Pour info voila mon script :
<?php
if($_POST)
{
    if(empty($_POST['nom']) OR empty($_POST['email']) OR empty($_POST['content']))
    {
        echo "<p>Veuillez remplir tous les champs.</p>";
    }
    else
    {
        mail($_POST['email'], stripslashes($_POST['nom'])." vous recommande un site", stripslashes($_POST['content']), "From: ".$_POST['email']."\nReply-To: ".$_POST['email']);
        echo "<p>Votre ami vient d'être prévenu.</p>";
    }    
}
?><form action='<?php echo $PHP_SELF; ?>?page=rec' method='post'>
<fieldset>...etc</fieldset></form>
Alors d'apres ce que j'ai pu voir jusqu'à present c'est ça :
!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,4
Mais je ne sais ni comment ni où l'appliquer ...

Merçi !

Posté : 29 juin 2006, 16:45
par guilt92
Ce que je te conseille :

Tu crées la fonction
// fonction de vérification d'email
function checkmail($email) {
	if(!preg_match('`^[[:alnum:]]([-_.]?[[:alnum:]])*@[[:alnum:]]([-_.]?[[:alnum:]])*\.([a-z]{2,4})$`',$email)) Return false;
	Return true;
}
tu la déclares dans ton fichier.

Tu lui envoie $_POST["email"] pour la verification, en stockant le resultat dans un booleen qui te diras si c est bon ou pas :
$mail_bon = checkmail($_POST["email"]);
if($mail_bon) // tu fais ta requete
else //tu mets un message d erreur

Posté : 29 juin 2006, 16:52
par Invité
Ce que je te conseille :

Tu crées la fonction
// fonction de vérification d'email
function checkmail($email) {
	if(!preg_match('`^[[:alnum:]]([-_.]?[[:alnum:]])*@[[:alnum:]]([-_.]?[[:alnum:]])*\.([a-z]{2,4})$`',$email)) Return false;
	Return true;
}
tu la déclares dans ton fichier.

Tu lui envoie $_POST["email"] pour la verification, en stockant le resultat dans un booleen qui te diras si c est bon ou pas :
$mail_bon = checkmail($_POST["email"]);
if($mail_bon) // tu fais ta requete
else //tu mets un message d erreur
Merçi pour le conseil :D

Mais...je la mets où ma fonction dans mon script ?

Boolen ? :roll:

Posté : 29 juin 2006, 16:58
par guilt92
Mais...je la mets où ma fonction dans mon script ?
Je te conseille de la mettre au début du fichier par exemple, entre les balises <?php et ?> bien sûr.
Boolen ?
Booleen est un type de variable qui peut etre Vrai ou Faux (true ou false).
Comme tu peux le voir la fonction fait soit un Return true soit un Return false cela veut dire que la variable $mail_bon aura la valeur true si l adresse est correcte et false sinon.

Je te conseille de réviser les bases du php si tu veux pouvoir avancer et comprendre, parce que la sinon dès que tu auras un probleme tu vas poser une question sur le forum, faire un copier coller de la réponse dans ton code et ne pas progresser...

Posté : 29 juin 2006, 17:14
par yank
Mais...je la mets où ma fonction dans mon script ?
Je te conseille de la mettre au début du fichier par exemple, entre les balises <?php et ?> bien sûr.
Boolen ?
Booleen est un type de variable qui peut etre Vrai ou Faux (true ou false).
Comme tu peux le voir la fonction fait soit un Return true soit un Return false cela veut dire que la variable $mail_bon aura la valeur true si l adresse est correcte et false sinon.

Je te conseille de réviser les bases du php si tu veux pouvoir avancer et comprendre, parce que la sinon dès que tu auras un probleme tu vas poser une question sur le forum, faire un copier coller de la réponse dans ton code et ne pas progresser...
ok je vais tester ça alors...

Oui je sais que ça fait un peu genre "donnez moi un code je copie je colle..." désolé, je ne veux pas paraître une feignasse...

A vrai dire, je suis en plein apprentissage du xhtml et css et je commence à bien me débrouiller à present, et j'ai survolé le php et lu quelques tutos comme sur le site du zero mais je n'ai pas encore eu le temps d'approfondir ni de bien retenir les bases daillleurs ;)

Je compte m'y mettre tres prochainement car c'est vraiment utile le php ! C'est pourquoi je vous demande de l'aide car evident je dois finir un site et comme vous vous en doutez je ne peux pas apprendre xhtml, css et php tout seul d'un coup en quelques jours voir en une semaine...

Mais bon j'avance j'avance et j'ai hate d'apprendre réellement le php 8)

Encore merçi pour l'aide :wink: