Espace membres en php: envoi mail???
Résolu
maxime_B
Messages postés
788
Date d'inscription
Statut
Membre
Dernière intervention
-
maxime_B Messages postés 788 Date d'inscription Statut Membre Dernière intervention -
maxime_B Messages postés 788 Date d'inscription Statut Membre Dernière intervention -
bonsoir
j'ai un petit problème concernant un espace membres.
voilà, le, en fait c'est censé envoyer un mail de confirmation, mais ça ne le fait pas. On s'inscrit bien, mais on ne recoit pas d'e-mail voila le code si c'est plus clair comme ça :
merci d'avance pour votre aide
j'ai un petit problème concernant un espace membres.
voilà, le, en fait c'est censé envoyer un mail de confirmation, mais ça ne le fait pas. On s'inscrit bien, mais on ne recoit pas d'e-mail voila le code si c'est plus clair comme ça :
<?php //Identifiants de connexion à la base de données. require("config.inc.php"); //On vérifie que la variable $_POST['inscription'] existe if (isset($_POST['inscription'])) { //Si les variables contenant le pseudo, le mot de passe et l'email existent et contiennent quelque chose. if (isset($_POST['pseudo'], $_POST['mot_passe'], $_POST['email']) && !empty($_POST['pseudo']) && !empty($_POST['mot_passe']) && !empty($_POST['email'])) { //Si le pseudo est supérieur à 3 caractères et inférieur à 35 caractères. if (strlen(trim($_POST['pseudo'])) > 3 && strlen(trim($_POST['pseudo'])) < 35) { //Si le mot de passe est supérieur à 4 caractères. if (strlen(trim($_POST['mot_passe'])) > 4) { //Mesure de sécurité. $pseudo = htmlentities(addslashes($_POST['pseudo'])); $mot_passe = htmlentities(addslashes($_POST['mot_passe'])); $email = htmlentities(addslashes($_POST['email'])); //Hashage du mot de passe avec md5(). $mot_passe = md5($mot_passe); //Envoi du mail de confirmation. $message = ' Bonjour '.$pseudo.'\n\n Vous venez de vous inscrire sur "nom_du_site" et pour valider votre inscription, vous devez cliquer sur le lien suivant : <a href="http://adresse_du_site.com/confirmation.php?pseudo='.$pseudo.'">http://adresse_du_site.com/confirmation.php?pseudo='.$pseudo.'</a> '; //Si le mail a été envoyé on peut enregistrer le membre if (mail($email, 'Confirmation de l\'inscription sur [Nom_du_site]', $message)) { //Connexion à mysql. mysql_connect($host,$username,$password); mysql_select_db($bdd_name); //On éxécute la requête qui enregistre un nouveau membre. mysql_query("INSERT INTO membres (id, pseudo, mot_passe, confirmation, email) VALUES ('', '".$pseudo."', '".$mot_passe."', '0', '".$email."')"); //Déconnection de mysql. mysql_close(); } else { echo 'Erreur : echec lors de l\'envoi du mail ! veuillez vous ré-inscrire'; } } else { echo 'Erreur : le mot de passe est trop court !'; } } else { echo 'Erreur : le pseudo est soit trop court, soit trop long !'; } } else { echo 'Erreur : vous avez oublié d\'entrer votre pseudo ou votre mot de passe ou votre adresse email !'; } } ?>
merci d'avance pour votre aide
A voir également:
- Espace membres en php: envoi mail???
- Espace insécable - Guide
- Espace de stockage gmail plein - Guide
- Espace stockage google - Guide
- Easy php - Télécharger - Divers Web & Internet
- Liberer espace ipad - Guide
7 réponses
petite question con, ton hébergeur accept la fonction mail () ???
maxime_B
Messages postés
788
Date d'inscription
Statut
Membre
Dernière intervention
55
je pense enfin je suis pas sur, je vais aller demander à un admin (ifrance).....
par ailleurs, j'ai pas l'impression que ton script envoie de mail
ca ca n'envoie pas de mail.
Pour envoyer un mail il faut au moins
avec
$adressse l'adresse du destinataire du mail;
$titre le titre du mail
$message le corps du mail
$headers des headers optionnels
voire http://www.commentcamarche.net/faq/117-php-fonction-mail
if (mail($email, 'Confirmation de l\'inscription sur [Nom_du_site]', $message)) { //Connexion à mysql. mysql_connect($host,$username,$password); mysql_select_db($bdd_name); //On éxécute la requête qui enregistre un nouveau membre. mysql_query("INSERT INTO membres (id, pseudo, mot_passe, confirmation, email) VALUES ('', '".$pseudo."', '".$mot_passe."', '0', '".$email."')"); //Déconnection de mysql. mysql_close(); }
ca ca n'envoie pas de mail.
Pour envoyer un mail il faut au moins
mail($adresse,$titre,$message,$headers);
avec
$adressse l'adresse du destinataire du mail;
$titre le titre du mail
$message le corps du mail
$headers des headers optionnels
voire http://www.commentcamarche.net/faq/117-php-fonction-mail
bon normalement j'ai rajouté la fonction mail et je reprends mon ancien hebergeur (le seul qui accepte la fonction mail())
voilà :
le code est bon ou ça n'enverrai pas de mail à ton avis?
voilà :
//Envoi du mail de confirmation. mail($email,'Inscription au site de X', $message = ' Bonjour '.$pseudo.'\n\n Vous venez de vous inscrire sur le site de X et pour valider votre inscription, vous devez cliquer sur le lien suivant : <a href="http://adresse_du_site.com/confirmation.php?pseudo='.$pseudo.'">http://adresse_du_site.com/confirmation.php?pseudo='.$pseudo.'</a> '; ) //Si le mail a été envoyé on peut enregistrer le membre if (mail($email, 'Confirmation de l\'inscription sur [Nom_du_site]', $message)) { //Connexion à mysql. mysql_connect($host,$username,$password); mysql_select_db($bdd_name); //On éxécute la requête qui enregistre un nouveau membre. mysql_query("INSERT INTO membres (id, pseudo, mot_passe, confirmation, email) VALUES ('', '".$pseudo."', '".$mot_passe."', '0', '".$email."')"); //Déconnection de mysql. mysql_close(); }
le code est bon ou ça n'enverrai pas de mail à ton avis?
pour
je ferait
Je suppose que tes paramétres pour les headers sont définit ailleurs ...
Bon courage
mail($email,'Inscription au site de X',$message = 'Bonjour '.$pseudo.'\n\nVous venez de vous inscrire sur le site de X et pour valider votre inscription, vous devez cliquer sur le lien suivant : <a href="http://adresse_du_site.com/confirmation.php?pseudo='.$pseudo.'">http://adresse_du_site.com/confirmation.php?pseudo='.$pseudo.'</a>'; )
je ferait
$message='Bonjour '.$pseudo.'\n\nVous venez de vous inscrire sur le site de X et pour valider votre inscription, vous devez cliquer sur le lien suivant : <a href="http://adresse_du_site.com/confirmation.php?pseudo='.$pseudo.'">http://adresse_du_site.com/confirmation.php?pseudo='.$pseudo.'</a>'; $sujet='Inscription au site de X'; $go= mail($email,$sujet,$message);
Je suppose que tes paramétres pour les headers sont définit ailleurs ...
Bon courage
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
$go= mail($email,$sujet,$message);
c'est quoi en fait ce $go et est-ce que j'ai vraiment besoin de headers???
c'est quoi en fait ce $go et est-ce que j'ai vraiment besoin de headers???