par
djtec » 13 mai 2007, 09:05
Désolé d'avoir enlevé le résolu mais il y a bien un probleme d'envoi du mail d'activation
Voici le code
<?
session_start();
include('includes/config.inc.php');
require('includes/function.php') ;
$c = @mysql_connect($host,$login_host,$pass_host) or die('connection impossible');
@mysql_select_db($hostname,$c) or die('selection impossible');
//recup des champs
$chaine = "abcdefghijklmnopqrstuvwxyz0123456789";
$confirm = str_shuffle($chaine); // On créée le code de confirmation qui permettra au membre de valider son compte
$pseudo = mysql_real_escape_string($_POST['pseudo']);
$mdp = mysql_real_escape_string($_POST['mdp']);
$verif_mdp = mysql_real_escape_string($_POST['verif_mdp']);
$mail = mysql_real_escape_string($_POST['mail']);
$prenom = mysql_real_escape_string($_POST['prenom']);
$born = mysql_real_escape_string($_POST['born']);
$gender = mysql_real_escape_string($_POST['gender']);
$pays = mysql_real_escape_string($_POST['pays']);
$msn = mysql_real_escape_string($_POST['msn']);
$website = mysql_real_escape_string($_POST['website']);
$point = strpos($mail,".");//Verif si l'email contient un point
$aroba = strpos($mail,"@");//Verif si l'email contient un aroba
if ($point=='')
{
$reponse = '<p><font color="red"><b>Votre email doit comporter un point</b></font></p>';
}
else if ($aroba=='')
{
$reponse = '<p><font color="red"><b>Votre email doit comporter un "@"</b></font></p>';
}
//On verifie si le pseudo et l'email sont connues
$verification = mysql_query("SELECT COUNT(*) FROM pdf_membre WHERE pseudo='$pseudo' OR mail='$mail'");
$donnees = mysql_fetch_array($verification);
if($donnees['COUNT(*)'] >= 1)
{
$reponse = '<p><font color="red"><b>Ce pseudo ou cet email sont déjà utilisé, veuillez en choisir d\'autres !</b></font></p>';
}
else if( $mdp != $verif_mdp) //On verifie que les 2 pass sont identiques
{
$reponse = '<p><font color="red"><b>Les mots de passe ne sont pas identiques !</b></font></p>';
}
//Si tout est bon on envoi le mail et on insere avec confirm 0
else
{
$date = date("Y-m-d"); //Date du jour
$sql = "INSERT INTO pdf_membre(id, pseudo, mdp, mail, confirm, prenom, pays, born, gender, msn, website, date) VALUES ('', '".$pseudo."', '".$mdp."', '".$mail."', '".$confirm."', '".$prenom."', '".$pays."', '".$born."', '".$gender."', '".$msn."', '".$website."', '".$date."')";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
$message1 = '<html><body>Bonjour ' . $pseudo . ' et bienvenue<br>';
$message1 .= '<br>';
$message1 .= 'Vous venez de vous inscrire et nous sommes heureux<br>de pouvoir vous compter aujourd\'hui parmi nos membres.<br>';
$message1 .= '<br>';
$message1 .= 'Voici un rappel de vos identifiants, notez les précieusement: <br>';
$message1 .= '----------------------------<br>';
$message1 .= 'Votre Pseudo :' . $pseudo .'.<br>';
$message1 .= 'Votre Mot de passe :' . $mdp .'.<br>';
$message1 .= 'Votre Mail :' . $mail .'.<br>';
$message1 .= '----------------------------';
$message1 .= '<br>';
$message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre à jour.<br>';
$message1 .= '<br>';
$message1 .= 'Votre Clé d\'activation:<br>';
$message1 .= 'http://www.monsite.com/confirm.php?login=' . str_replace(' ','%20',$pseudo) . '&confirm=' . $confirm . '<br>';
$message1 .= '<br>';
$message1 .= 'A très bientôt sur le site!';
$entete = "MIME-Version: 1.0\r\n";
$entete .= "Content-type: text/html; charset=iso-8859-1\r\n";
$entete .= "From: <$adresse_webmaster>\r\n";
$entete .= "Reply-To: $adresse_webmaster\r\n";
//Envoi du mail
mail($mail,'Confirmation d\'inscription' , $message1, $entete);
//Texte vu sur le site par le nouvel inscrit
$reponse = '<p><font color="green"><b>Enregistrement réussi.</b></font></p><br>
Toutefois, ce site requière l\'activation du compte,<br>
une clef d\'activation a été envoyée vers l\'adresse email que vous avez fournie.<br>
Veuillez vérifier votre boîte email pour de plus amples informations.';
}
?>
Je ne comprend pas pourquoi maintenant les mail d'activation ne s'envoie plus ce qui me pose un gros problème
Désolé d'avoir enlevé le résolu mais il y a bien un probleme d'envoi du mail d'activation
Voici le code
[php]<?
session_start();
include('includes/config.inc.php');
require('includes/function.php') ;
$c = @mysql_connect($host,$login_host,$pass_host) or die('connection impossible');
@mysql_select_db($hostname,$c) or die('selection impossible');
//recup des champs
$chaine = "abcdefghijklmnopqrstuvwxyz0123456789";
$confirm = str_shuffle($chaine); // On créée le code de confirmation qui permettra au membre de valider son compte
$pseudo = mysql_real_escape_string($_POST['pseudo']);
$mdp = mysql_real_escape_string($_POST['mdp']);
$verif_mdp = mysql_real_escape_string($_POST['verif_mdp']);
$mail = mysql_real_escape_string($_POST['mail']);
$prenom = mysql_real_escape_string($_POST['prenom']);
$born = mysql_real_escape_string($_POST['born']);
$gender = mysql_real_escape_string($_POST['gender']);
$pays = mysql_real_escape_string($_POST['pays']);
$msn = mysql_real_escape_string($_POST['msn']);
$website = mysql_real_escape_string($_POST['website']);
$point = strpos($mail,".");//Verif si l'email contient un point
$aroba = strpos($mail,"@");//Verif si l'email contient un aroba
if ($point=='')
{
$reponse = '<p><font color="red"><b>Votre email doit comporter un point</b></font></p>';
}
else if ($aroba=='')
{
$reponse = '<p><font color="red"><b>Votre email doit comporter un "@"</b></font></p>';
}
//On verifie si le pseudo et l'email sont connues
$verification = mysql_query("SELECT COUNT(*) FROM pdf_membre WHERE pseudo='$pseudo' OR mail='$mail'");
$donnees = mysql_fetch_array($verification);
if($donnees['COUNT(*)'] >= 1)
{
$reponse = '<p><font color="red"><b>Ce pseudo ou cet email sont déjà utilisé, veuillez en choisir d\'autres !</b></font></p>';
}
else if( $mdp != $verif_mdp) //On verifie que les 2 pass sont identiques
{
$reponse = '<p><font color="red"><b>Les mots de passe ne sont pas identiques !</b></font></p>';
}
//Si tout est bon on envoi le mail et on insere avec confirm 0
else
{
$date = date("Y-m-d"); //Date du jour
$sql = "INSERT INTO pdf_membre(id, pseudo, mdp, mail, confirm, prenom, pays, born, gender, msn, website, date) VALUES ('', '".$pseudo."', '".$mdp."', '".$mail."', '".$confirm."', '".$prenom."', '".$pays."', '".$born."', '".$gender."', '".$msn."', '".$website."', '".$date."')";
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
$message1 = '<html><body>Bonjour ' . $pseudo . ' et bienvenue<br>';
$message1 .= '<br>';
$message1 .= 'Vous venez de vous inscrire et nous sommes heureux<br>de pouvoir vous compter aujourd\'hui parmi nos membres.<br>';
$message1 .= '<br>';
$message1 .= 'Voici un rappel de vos identifiants, notez les précieusement: <br>';
$message1 .= '----------------------------<br>';
$message1 .= 'Votre Pseudo :' . $pseudo .'.<br>';
$message1 .= 'Votre Mot de passe :' . $mdp .'.<br>';
$message1 .= 'Votre Mail :' . $mail .'.<br>';
$message1 .= '----------------------------';
$message1 .= '<br>';
$message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre à jour.<br>';
$message1 .= '<br>';
$message1 .= 'Votre Clé d\'activation:<br>';
$message1 .= 'http://www.monsite.com/confirm.php?login=' . str_replace(' ','%20',$pseudo) . '&confirm=' . $confirm . '<br>';
$message1 .= '<br>';
$message1 .= 'A très bientôt sur le site!';
$entete = "MIME-Version: 1.0\r\n";
$entete .= "Content-type: text/html; charset=iso-8859-1\r\n";
$entete .= "From: <$adresse_webmaster>\r\n";
$entete .= "Reply-To: $adresse_webmaster\r\n";
//Envoi du mail
mail($mail,'Confirmation d\'inscription' , $message1, $entete);
//Texte vu sur le site par le nouvel inscrit
$reponse = '<p><font color="green"><b>Enregistrement réussi.</b></font></p><br>
Toutefois, ce site requière l\'activation du compte,<br>
une clef d\'activation a été envoyée vers l\'adresse email que vous avez fournie.<br>
Veuillez vérifier votre boîte email pour de plus amples informations.';
}
?>[/php]
Je ne comprend pas pourquoi maintenant les mail d'activation ne s'envoie plus ce qui me pose un gros problème