Page 1 sur 1

Requête d'envoi de mail

Posté : 21 juin 2011, 11:39
par Mik0
Lorsque ma page "Activation.php" s’exécute, elle active le compte de l'utilisateur et lui envoi un mail.
Mon problème est que le mail n'est pas envoyé. La 1ère requête est cependant exécutée.
<?php
session_start();
include("inc_connexion.php");
$maConnexion=connexion();
$requete1 = "select * from utilisateur";
$resultat= mysql_query($requete1, $maConnexion);
$row=mysql_fetch_array($resultat);
if(!empty($_GET['id']))
{
$requete2 = "update utilisateur set actif='1' where id='".$_GET['id']."'";
mysql_query($requete2, $maConnexion);
}

		//Envoi du mail avec identifiants 
$requete3 = "SELECT login FROM utilisateur WHERE id = '".$_GET['id']."'";
$res = mysql_query($requete3, $maConnexion) or die('Erreur SQL !<br>'.$requete3.'<br>'.mysql_error()); 
$ligne = mysql_fetch_array($res);

$TO = $ligne['mail'];
$h  = "From: " . $TO;
$subject = "Rio Services : Création de compte";

$message = "Rio Services" . "\r\n\r\n";
$message .= "Identifiant : " . $ligne['login'] . "\r\n\r\n";
$message .= "Mot de passe : " . $ligne['mdp'] . "\r\n\r\n";

	while (list($key, $val) = each($HTTP_POST_VARS))
	{
	  $message .= "$key : $val\n";
	}

	mail($TO, $subject, $message, $h);

	Header("Location:Partenaires.php");
?>

Re: Requête d'envoi de mail

Posté : 21 juin 2011, 20:42
par moogli
bonjour et merci c'est pas des options

vire le header en bas de page tu devrais avoir des erreurs, si ce n'est pas le cas active l'affichage de celle ci avec error_reporting(E_ALL | E_STRICT); en 1ère ligne du script.

- la 1ère requête est inutile, à la limite la transformer en requête qui vérifie si l'id existe dans la table (ce qui permettrais de virer la 3ème requête)
- a quoi peux bien servir le while ? tu mélange un formulaire avec des données passées en get ? ou t'a récupéré un bout de code ? (j'ai d'ailleur vu celui ci y a pas longtemps sur le forum).
- $HTTP_POST_VARS est une manière ante diluvienne de traiter les formulaires => Récupérer les valeurs d'un formulaire
- tu essai d'utiliser des infos de la dernière requête que tu ne demande pas ...

@+