jphilippev
Messages postés253Date d'inscriptionlundi 27 février 2006StatutMembreDernière intervention 5 décembre 2008
-
14 déc. 2007 à 11:37
cs_fecou
Messages postés3Date d'inscriptionjeudi 12 novembre 2009StatutMembreDernière intervention19 novembre 2009
-
19 nov. 2009 à 02:01
bonjour
je travaille pour l'instant en local pour tester mes pages
qui créer un espace sécurisé pour mon site
et j'ai une page inscription.php ou l'on rentre son login désiré
son mot de passe et son adresse email
quand on valide cela me repond que l'adresse mail n'est pas valide
donc je pense que c'est mon php.ini qui n'est pas configurer pour envoyer des mail en local
(enfin je pense)
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 14 déc. 2007 à 12:17
[mail function]
; For Win32 only.
SMTP = le SMTP de ton fournisseur d'acces
smtp_port = 25
; For Win32 only.
;sendmail_from =
[mailto:me@example.com
ton adress mail
]
Personne ne peut se permettre de juger l'autre....
jphilippev
Messages postés253Date d'inscriptionlundi 27 février 2006StatutMembreDernière intervention 5 décembre 20081 14 déc. 2007 à 11:39
Page inscription.php
<?php
//------------------------------------------------------
// Fonction Inscription
// - Attribution d'une id unique
// - Tous les champs doivent être remplis
// - Les deux champs passwords doivent être identiques
// - Les champs ne doivent pas contenir dapostrophe
// - Le login ne doit pas déjà exister
// - Le mail ne doit pas être dans la blackliste
// - Envoi d'un mail avec une adresse de confirmation
//------------------------------------------------------
function inscription()
{
require "connect.inc.php";
$page=$serveur.$_SERVER["PHP_SELF"];
$nom=$_POST["nom"];
$pass=$_POST["pass"];
$pass2=$_POST["pass2"];
$email=$_POST["email"];
$IP=$_SERVER['REMOTE_ADDR'];
$heure=time();
// Attendre quil ny ait pas dautres user avec le même numéro de session.
do
{
$uniqueid=md5(time());
$resultat = mysql_query("SELECT * FROM users WHERE uniqueid='$uniqueid'");
}
while(false!=($ligne = mysql_fetch_array($resultat)));
// Vérification diverses et variées.
if($nom=="" || $pass=="" || $pass2=="" || $email==""){show_form($nom,$pass,$pass2,$email,'Certains champs ne sont pas remplis !');die();}
// Tous les champs doivent être remplis
if($pass!=$pass2){show_form($nom,$pass,$pass2,$email,'Le mot de passe et la confirmation sont différents.');die();}
// Le mot de passe et la confirmation doivent être identiques
if(!(!strrpos($_POST["nom"], "'") && !strrpos($_POST["pass"], "'") && !strrpos($_POST["email"], "'"))){show_form($nom,$pass,$pass2,$email,'Ne pas utiliser de caractères spéciaux');die();}
// Eviter les failles SQL
$resultat = mysql_query("SELECT * FROM users WHERE userid='$nom'");
if(false!=($ligne = mysql_fetch_array ($resultat))){show_form($nom,$pass,$pass2,$email,"Le membre (".$nom.") existe déjà");die();}
// Si le login est déjà pris
$resultat = mysql_query("SELECT * FROM users WHERE email='$email' AND level='blacklist'");
if(false!=($ligne = mysql_fetch_array ($resultat))){show_form($nom,$pass,$pass2,$email,"L'adresse e-mail (".$email.") est blacklistée. Utilisez une autre adresse mail.");die();}
// Si le-mail est dans la blacklist
$subject = "Veuillez confirmer votre inscription";
$headers = "From:
[mailto:moi@hotmail.com\n
moi@hotmail.com\n
]
";
$message = "Veuillez confirmer votre inscription\n";
$message .= "Bonjour ".$nom."\n\n";
$message .= "Vous avez reçu ce mail parce que vous ou quelqu'un d'autre utilisant votre adresse mail s'est enregistré sur le site ".$site_name.".\n";
$message .= "Pour valider cet inscription, cliquez sur ce lien :\n ".$page."?code=".$uniqueid."&BL=0 \n";
$message .= "Si vous vous n'êtes pas inscrit sur ".$site_name.", veuillez ignorer ce message et accepter nos excuses.\n";
$message .= "Vous pouvez aussi choisir d'ajouter votre mail à notre blacklist pour ne plus recevoir de mail d'inscription de notre part en cliquant sur ce lien :\n ".$page."?code=".$uniqueid."&BL=1 \n";
$message .= "Votre e-mail a été envoyé de l'IP ".$IP.".\n\n";
$message .= "Cordialement,\n";
$message .= "Le Webmaster";
// Envoi du mail
if(@mail($email, $subject, $message, $headers))
{
$query = "INSERT INTO users VALUES ('$nom','$pass','$uniqueid','en_attente','$email','$heure','$IP')";
// On ajoute le membre à la liste avec le status en attente
mysql_query($query);
mysql_close();
$page_confirmation = "Merci !
Vous devriez recevoir un e-mail à l'adresse suivante : ".$email.".
";
$page_confirmation .= "Veuillez confirmer l'inscription en cliquant sur le lien se trouvant sur le mail.
";
echo $page_confirmation;
}
else
{
show_form($nom,$pass,$pass2,$email,"Le mail de confirmation n'a pu être envoyé. Peut-être que l'adresse n'est pas valide. Veuillez contacter le webmaster s'il vous plait.");
}
}
//------------------------------------------------------
// Fonction Formulaire
// - Retourne le formulaire avec les messages derreurs
//------------------------------------------------------
function show_form($nom="",$pass="",$pass2="",$email="",$error="")
{
$page_inscription = "<form action="".$_SERVER["PHP_SELF"]."" method="post">";
$page_inscription .= "Merci de remplir le formulaire ci-dessous :
";
$page_inscription .= "Login désiré :
";
$page_inscription .= "Mot de passe :
";
$page_inscription .= "Confirmation du mot de passe :</td><td>
//-------------------------------------------------------------------------------
// Fonction de vérification de l'adresse de confirmation
// - Suppression des utilisateurs nayant pas confirmer avant la durée impartie
// - Extraction de la personne concernée
// - Validation de son enregistrement
// - Si l'on veut être blacklisté, après confirmation on effectue le blacklistage
// - Le webmaster recoit un mail lorsque linscription est validé
//-------------------------------------------------------------------------------
function code_check($code="",$BL="")
{
require "connect.inc.php";
$heure=time();
// On profite de loccasion pour supprimer les users nayant pas confirmé dans la durée impartie
$heure2=$heure-$validite;
mysql_query("DELETE FROM users WHERE heure<$heure2 AND level='en_attente'");
// On extrait la personne qui souhaite valider son inscription
$uniqueid=$code;$resultat mysql_query("SELECT * FROM users WHERE uniqueid'$uniqueid' AND level='en_attente'");
if(false==($ligne = mysql_fetch_array ($resultat)))
{
mysql_close();
$page_validation = "Ce code n'existe pas, est expiré ou à déjà été validé, veuillez remplir à nouveau le formaulaire : [mailto:ne_pas_repondre@free.fr\n
ne_pas_repondre@free.fr\n
]
";
@mail($adresse_webmaster, $subject, $message, $headers);
}
}
// Si l'utilisateur vient pour être blacklisté, on passe son level de en_attente à blacklist
// Mais avant une petite confirmation
if($BL==1)
{
$page_validation = "Vous souhaitez ajouter votre adresse mail à notre blackliste. Cliquez ici pour que vous puissiez confirmer.";
}
// Si lutilisateur a confirmé qu'il veut être dans la liste noire, on l'y met
if($BL==2)
{
mysql_query("UPDATE users SET level='blacklist' WHERE uniqueid ='$uniqueid' AND level='en_attente'");
$page_validation = 'Votre e-mail a été blacklisté. Vous ne receverez plus aucun e-mail de notre part.';
}
mysql_close();
}
echo "".$page_validation."
<?php
require ("inscription.php");
if (isset($_POST["email"]))
{
// Verification et envoi du mail de confirmation
inscription();
}
else if(isset($_GET["code"]))
{
// Verification du code et blacklistage si besoin
code_check($_GET["code"],$_GET["BL"]);
}
else
{
// Formaulaire d'enregistrement
show_form();
}
?>
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 14 déc. 2007 à 18:19
pour utiliser phpmailer tu a deux fichier a placé a la racine du site et ensuite a initialiser les parametre via ton code php je serai plus precis ce soir mais essaye de telecharger phpmailer
Personne ne peut se permettre de juger l'autre....
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 14 déc. 2007 à 20:38
class.phpmailer.php et class.smtp.php tu dois les avoirs...
ensuite dans le code php tu met :
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Host = "(le smtp de ton forunisseur d'acces"; // specify main and backup server
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->From = "l'adresse d'ou le mail provient donc ton adresse msn par exemple";
$mail->FromName = "ton nom";
$mail->AddAddress('ladresse a ki tu lenvoi');
$mail->AddReplyTo("l'adresse reply");
$mail->Subject = "le sujet du mail";
$mail->Body = "le mail au format html";
$mail->AltBody = le mail format text brut;
$mail->Send();
si tu a un soucy n'hesite pas
Personne ne peut se permettre de juger l'autre....
jphilippev
Messages postés253Date d'inscriptionlundi 27 février 2006StatutMembreDernière intervention 5 décembre 20081 17 déc. 2007 à 10:47
merci seb&typh
<?php
//------------------------------------------------------
// Fonction Inscription
// - Attribution d'une id unique
// - Tous les champs doivent être remplis
// - Les deux champs passwords doivent être identiques
// - Les champs ne doivent pas contenir dapostrophe
// - Le login ne doit pas déjà exister
// - Le mail ne doit pas être dans la blackliste
// - Envoi d'un mail avec une adresse de confirmation
//------------------------------------------------------
function inscription()
{
require "connect.inc.php";
$page=$serveur.$_SERVER["PHP_SELF"];
$nom=$_POST["nom"];
$pass=$_POST["pass"];
$pass2=$_POST["pass2"];
$email=$_POST["email"];
$IP=$_SERVER['REMOTE_ADDR'];
$heure=time();
//PHP Mailer
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Host = "smtp.wanadoo.fr"; // specify main and backup server
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->From = $headers;
$mail->FromName = "JP";
$mail->AddAddress('$email');
$mail->AddReplyTo("
[mailto:jphilippev@hotmail.com
jphilippev@hotmail.com
]
");
$mail->Subject = $subject;
$mail->Body = $message;
$mail->AltBody = $message;
$mail->Send();
// Attendre quil ny ait pas dautres user avec le même numéro de session.
do
{
$uniqueid=md5(time());
$resultat = mysql_query("SELECT * FROM users WHERE uniqueid='$uniqueid'");
}
while(false!=($ligne = mysql_fetch_array($resultat)));
// Vérification diverses et variées.
if($nom=="" || $pass=="" || $pass2=="" || $email==""){show_form($nom,$pass,$pass2,$email,'Certains champs ne sont pas remplis !');die();}
// Tous les champs doivent être remplis
if($pass!=$pass2){show_form($nom,$pass,$pass2,$email,'Le mot de passe et la confirmation sont différents.');die();}
// Le mot de passe et la confirmation doivent être identiques
if(!(!strrpos($_POST["nom"], "'") && !strrpos($_POST["pass"], "'") && !strrpos($_POST["email"], "'"))){show_form($nom,$pass,$pass2,$email,'Ne pas utiliser de caractères spéciaux');die();}
// Eviter les failles SQL
$resultat = mysql_query("SELECT * FROM users WHERE userid='$nom'");
if(false!=($ligne = mysql_fetch_array ($resultat))){show_form($nom,$pass,$pass2,$email,"Le membre (".$nom.") existe déjà");die();}
// Si le login est déjà pris
$resultat = mysql_query("SELECT * FROM users WHERE email='$email' AND level='blacklist'");
if(false!=($ligne = mysql_fetch_array ($resultat))){show_form($nom,$pass,$pass2,$email,"L'adresse e-mail (".$email.") est blacklistée. Utilisez une autre adresse mail.");die();}
// Si le-mail est dans la blacklist
$subject = "Veuillez confirmer votre inscription";
$headers = "From:
[mailto:moi@hotmail.com\n
moi@hotmail.com\n
]
";
$message = "Veuillez confirmer votre inscription\n";
$message .= "Bonjour ".$nom."\n\n";
$message .= "Vous avez reçu ce mail parce que vous ou quelqu'un d'autre utilisant votre adresse mail s'est enregistré sur le site ".$site_name.".\n";
$message .= "Pour valider cet inscription, cliquez sur ce lien :\n ".$page."?code=".$uniqueid."&BL=0 \n";
$message .= "Si vous vous n'êtes pas inscrit sur ".$site_name.", veuillez ignorer ce message et accepter nos excuses.\n";
$message .= "Vous pouvez aussi choisir d'ajouter votre mail à notre blacklist pour ne plus recevoir de mail d'inscription de notre part en cliquant sur ce lien :\n ".$page."?code=".$uniqueid."&BL=1 \n";
$message .= "Votre e-mail a été envoyé de l'IP ".$IP.".\n\n";
$message .= "Cordialement,\n";
$message .= "Le Webmaster";
// Envoi du mail
if(@mail($email, $subject, $message, $headers))
{
$query = "INSERT INTO users VALUES ('$nom','$pass','$uniqueid','en_attente','$email','$heure','$IP')";
// On ajoute le membre à la liste avec le status en attente
mysql_query($query);
mysql_close();
$page_confirmation = "Merci !
Vous devriez recevoir un e-mail à l'adresse suivante : ".$email.".
";
$page_confirmation .= "Veuillez confirmer l'inscription en cliquant sur le lien se trouvant sur le mail.
";
echo $page_confirmation;
}
else
{
show_form($nom,$pass,$pass2,$email,"Le mail de confirmation n'a pu être envoyé. Peut-être que l'adresse n'est pas valide. Veuillez contacter le webmaster s'il vous plait.");
}
}
//------------------------------------------------------
// Fonction Formulaire
// - Retourne le formulaire avec les messages derreurs
//------------------------------------------------------
function show_form($nom="",$pass="",$pass2="",$email="",$error="")
{
$page_inscription = "<form action="".$_SERVER["PHP_SELF"]."" method="post">";
$page_inscription .= "Merci de remplir le formulaire ci-dessous :
";
$page_inscription .= "Login désiré :
";
$page_inscription .= "Mot de passe :
";
$page_inscription .= "Confirmation du mot de passe :</td><td>
//-------------------------------------------------------------------------------
// Fonction de vérification de l'adresse de confirmation
// - Suppression des utilisateurs nayant pas confirmer avant la durée impartie
// - Extraction de la personne concernée
// - Validation de son enregistrement
// - Si l'on veut être blacklisté, après confirmation on effectue le blacklistage
// - Le webmaster recoit un mail lorsque linscription est validé
//-------------------------------------------------------------------------------
function code_check($code="",$BL="")
{
require "connect.inc.php";
$heure=time();
// On profite de loccasion pour supprimer les users nayant pas confirmé dans la durée impartie
$heure2=$heure-$validite;
mysql_query("DELETE FROM users WHERE heure<$heure2 AND level='en_attente'");
// On extrait la personne qui souhaite valider son inscription
$uniqueid=$code;$resultat mysql_query("SELECT * FROM users WHERE uniqueid'$uniqueid' AND level='en_attente'");
if(false==($ligne = mysql_fetch_array ($resultat)))
{
mysql_close();
$page_validation = "Ce code n'existe pas, est expiré ou à déjà été validé, veuillez remplir à nouveau le formaulaire : [mailto:ne_pas_repondre@free.fr\n
ne_pas_repondre@free.fr\n
]
";
@mail($adresse_webmaster, $subject, $message, $headers);
}
}
// Si l'utilisateur vient pour être blacklisté, on passe son level de en_attente à blacklist
// Mais avant une petite confirmation
if($BL==1)
{
$page_validation = "Vous souhaitez ajouter votre adresse mail à notre blackliste. Cliquez ici pour que vous puissiez confirmer.";
}
// Si lutilisateur a confirmé qu'il veut être dans la liste noire, on l'y met
if($BL==2)
{
mysql_query("UPDATE users SET level='blacklist' WHERE uniqueid ='$uniqueid' AND level='en_attente'");
$page_validation = 'Votre e-mail a été blacklisté. Vous ne receverez plus aucun e-mail de notre part.';
}
mysql_close();
}
echo "".$page_validation."
";
}
?>
en fait je sais pas ou placer le petit code que tu m'as donné..
vu que je dois envoyer le formulaire avec les variable qu'il y a dedans
je pense a la fin mais bon je prefere demander
cs_sebastien_et_typh
Messages postés289Date d'inscriptionjeudi 5 octobre 2006StatutMembreDernière intervention11 juin 20103 17 déc. 2007 à 12:05
je pense que tu peux le mettre dans ton if ($mail_controle==1)
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Host = "smtp.wanadoo.fr"; // specify main and backup server
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->From = $headers;
$mail->FromName = "JP";
$mail->AddAddress('$email');
$mail->AddReplyTo("[mailto:jphilippev@hotmail.com jphilippev@hotmail.com]");
$mail->Subject = "Nouvelle inscription sur ".$site_name;
$message="Bonjour,\n\n";
$message.="Un nouveau membre vient de s'inscrire :\n";
$message.="Nom : ".$ligne["userid"]."\n";
$message.="E-Mail : ".$ligne["email"]."\n";
$mail->Body = $message;
$mail->AltBody = $message;
$mail->Send();
je pense que ca devrais fonctionné
Personne ne peut se permettre de juger l'autre....
cs_fecou
Messages postés3Date d'inscriptionjeudi 12 novembre 2009StatutMembreDernière intervention19 novembre 2009 19 nov. 2009 à 02:01
Bonjour,
je cherche à envoyer un mail par php mailer. L'adresse de laquelle j'envoie est fecoucou@gmail.com et celle à laquelle je reçois est fecoucou@hotmail.com. Voici mon code :
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP(); // set mailer to use SMTP
$mail->Host = "ssl://smtp.gmail.com"; // specify main and backup server
$mail->Port = 587;
$mail->Username = "fecoucou";
$mail->Password = "motdepasse";//caché pour la circonstance
$mail->SMTPAuth = true; // turn on SMTP authentication
$mail->From = "fecoucou@gmail.com";
$mail->FromName = "felix";
$mail->AddAddress('fecoucou@hotmail.com');
$mail->Subject = "ça marche ou ça marche pas!";
$mail->Body = "Hi,How are you?";
$mail->AltBody = "Hi,How are you?";
$mail->Send();
La réponse de firefox est la suivante :
SMTP Error: Could not connect to SMTP host.