Page 1 sur 1
Problème avec un espace membre
Posté : 20 mars 2007, 09:53
par Grenouille
Bonjour, je suis débutante en php et j'ai réalisé un système d'espace membre avec un formulaire d'inscrition qui permet d'envoyer un mail pour la confirmation des identifiants. Mon problème se situe au niveau du mail de confirmation. J'ai une erreur qui dit
Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in c:\documents and settings\bureau\stage\intranet\inscription.php on line 45
Erreur : echec lors de l'envoi du mail ! veuillez vous ré-inscrire
Merci de bien vouloir m'aider. P.S. C'est urgent.
Posté : 20 mars 2007, 10:24
par pascaltje
ça n'a rien à voir avec la base de données. c'est juste que l'envoi de mail n'est pas configuré.
les trucs à configurer:
Code : Tout sélectionner
[mail function]
; For Win32 only.
SMTP = serveur mail
smtp_port = 25
; For Win32 only.
sendmail_from = mail@envoi
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path = "C:\xamp\xampp\sendmail\sendmail.exe -t"
A+
Pascal
Posté : 20 mars 2007, 10:32
par zeus
Modération :
Tes délais ne nous intéressent pas.
Nous savons que tu es en difficulté puisque tu demandes de l'aide,
mais nous sommes tous bénévoles et répondons selon nos disponibilités.
Merci de ne pas s'impatienter.
Posté : 20 mars 2007, 11:51
par Invité
Merci, je ne m'impatiente pas je marque urgent parce que je suis en stage et c la raison pour laquelle je le précise. Je voudrais juste que l'entreprise puisse utiliser mon travail lors de mon départ. En tout cas merci pour la config, je l'ai déjà fait mais ça veut pas fonctionner. J'ai réchercher d'autres trucs et pour l'instant les réponses sont toujours les mêmes (par rapport au php.ini). Je continue donc en espérant trouver une solution.
Posté : 20 mars 2007, 12:07
par pascaltje
est-ce que tu as des messages d'erreur?
car là, comme ça, on ne peut pas t'aider ...
A+
Pascal
Posté : 20 mars 2007, 12:20
par hakazizi
ça n'a rien à voir avec la base de données. c'est juste que l'envoi de mail n'est pas configuré.
les trucs à configurer:
Code : Tout sélectionner
[mail function]
; For Win32 only.
SMTP = serveur mail
smtp_port = 25
; For Win32 only.
sendmail_from = mail@envoi
; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path = "C:\xamp\xampp\sendmail\sendmail.exe -t"
A+
Pascal
c'est a mettre ou? car j'ai aussi ce probleme sur easyphp donc je suis obliger d'envoyer mes fichier dans mon hebergement pour le testé
Posté : 20 mars 2007, 12:27
par pascaltje
les éléments cités se trouvent dans le fichier php.ini ( son emplacement exact sur l'ordi est indiqué dans le phpinfo() ).
différents facteurs peuvent influer :
_ la sécurité : ports bloqués...
_ pas de serveur de mail dispo
_ ...
A+
Pascal
Posté : 21 mars 2007, 09:18
par Grenouille
J'ai fais les modifs, seulement quand j'éteins et rallume easy php les modifcations ne se gardent pas. Le message d'erreur précis est :
Warning: mail(): Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in c:\documents and settings\bureau\stage\intranet\inscription.php on line 45
Erreur : echec lors de l'envoi du mail ! veuillez vous ré-inscrire
Si ça peut vous aider je vous donne la ligne 45 et autour.
//Si le mail a été envoyé on peut enregistrer le membre
if (mail($email, 'Confirmation de l\'inscription sur ["http://127.0.0.1/Intranet/"]', $message))
{
//On éxécute la requête qui enregistre un nouveau membre.
mysql_query("INSERT INTO utilisateur (Nom_Util, motpasse, Util_confirmation, Util_email, Util_confirmation_code) VALUES ('".$pseudo."', '".$mot_passe."', '0', '".$email."', '".$code_confirmation."')");
echo 'Message : votre compte a bien été créé ! Un e-mail vient de vous être envoyé contenant un lien de confirmation de votre inscription.';
}
else
{
echo 'Erreur : echec lors de l\'envoi du mail ! veuillez vous ré-inscrire';
}
Posté : 22 mars 2007, 17:21
par Invité
Ceci fonctionne maintenant j'ai un problème dans mon confirmation.php. L'erreur est
Aucun code n'est indiqué
Je vous donne le code de ma page :
<?php
//Indentifiants de connexion à la base de données.
require("config.inc.php");
//Connexion à la base de données.
mysql_connect("localhost","root","");
mysql_select_db("siteintranet");
//Vérification que la variable $_GET['code'] existe et contient quelque chose.
if (!empty($_GET['code']) && !empty($_GET['pseudo']))
{
//Mesure de sécurité, notamment pour éviter les injections sql.
$pseudo = htmlspecialchars($_GET['pseudo']);
$code = htmlspecialchars($_GET['code']);
//On cherche le nombre de code $code dans la table membres.
$sql = mysql_query("SELECT COUNT(*) AS nb_code FROM utilisateur WHERE Util_confirmation_code='".$code."' AND nom_Util='".$pseudo."'");
//Si le code existe.
if (mysql_result($sql,0,'nb_code') == 1)
{
//Information sur le compte (id et confirmation)
$sql_infos = mysql_query("SELECT num_Util, Util_confirmation FROM utilisateur WHERE Util_confirmation_code='".$code."' AND nom_util='".$pseudo."'");
$donnees = mysql_fetch_array($sql_infos);
//On regarde si il n'est pas confirmé.
if ($donnees['confirmation'] == 0)
{
//Validation du compte.
mysql_query("UPDATE utilisateur SET util_confirmation=1 WHERE num_util=".$donnees['id']);
echo 'Message : compte validé !<br /><a href="index2.php">Accueil</a>';
}
else
echo 'Erreur : ce compte est déjà confirmé !';
}
else
echo 'Erreur : le compte à confirmé n\'existe pas !';
}
else
echo 'Erreur : aucun code n\'est indiqué !';
//Déconnection de la base de données.
mysql_close();
?>
Merci de bien vouloir m'aidé si y'en a qui connaisent la résolution à ce problème.
Posté : 22 mars 2007, 17:31
par ours-blanc-
tu es sur un reseau d'entreprise?