Je fait une erreur mais je ne sais pas où?

loltina
Invité n'ayant pas de compte PHPfrance

22 oct. 2005, 10:21

voici mon script , je reçois le nom, l'email mais pas le pseudo et pas le jour ? pouvez vous me dire où est mon erreur ..... merci
<?php
	$nomutilisateur=$_POST['nomutilisateur'];
	$mailutilisateur=$_POST['emailutilisateur'];
	$pseudoutilisateur=$_POST['pseudoutilisateur'];
        $jourutilisateur=$_POST['jourutilisateur'];
	
	/*Envoi automatique de l'email de notification d'enregistrement d'un membre*/
	$email="[email protected]";
	$sujet="Madame casino: inscription membres";
	$message="Nom: ".$nomutilisateur."\n";
	$message.="Mail: ".$mailutilisateur."\n";
	$message.="Pseudo: ".$pseudoutilisateur."\n";
        $message.="Jour: ".$jourutilisateur."\n";
	$headers="From: ".$mailutilisateur;
	mail($email,$sujet,$message,$headers);
	
	header("Location:http://www.;;;;;;;;;;;/index.htm");
?>

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

22 oct. 2005, 10:25

avant de les envoyer, vérifie déjà que tu récupères les valeurs, une faute de frappe est vite arrivée :)

Invité
Invité n'ayant pas de compte PHPfrance

22 oct. 2005, 10:27

merci pour la rapidité
je reçois ceci
Nom: russo
Mail: [email protected]
Pseudo: ( vide)
Jour: (vide)

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

22 oct. 2005, 10:34

ce que je voulais dire, c'est que avant d'envoyer ton mail, vérifie que tu récupères bien les variables, qui proviennent je pense d'un formulaire
si tu fais ça :
$nomutilisateur=$_POST['nomutilisateur'];
echo 'nomutilisateur="'.$nomutilisateur.'"';
et que ta variable est vide, alors c'est qu'il y a déjà un problème avant d'envoyer le mail, il suffit que tu ais fait une faute de frappe dans le nom du champ texte HTML et ta valeur se perd dans la nature

Tu peux aussi utiliser ça :
echo '<pre>';
print_r($_POST);
echo '<pre>';
Cela va t'afficher tout le tableau POST, tu verras si tes variables sont bien transmises

Mammouth du PHP | 19672 Messages

22 oct. 2005, 10:39

Alors fais un test plus complet pour afficher ce qui manque, ça te permettra de cerner le problème à la source en remontant jusqu'à l'erreur:
<?php
$nomutilisateur    = isset($_POST['nomutilisateur'])    ? trim($_POST['nomutilisateur'])    : "";
$mailutilisateur   = isset($_POST['emailutilisateur'])  ? trim($_POST['emailutilisateur'])  : "";
$pseudoutilisateur = isset($_POST['pseudoutilisateur']) ? trim($_POST['pseudoutilisateur']) : "";
$jourutilisateur   = isset($_POST['jourutilisateur'])   ? trim($_POST['jourutilisateur'])   : "";

if(!empty($nomutilisateur) && !empty($mailutilisateur) && !empty($pseudoutilisateur) && !empty($jourutilisateur))
{
    /*Envoi automatique de l'email de notification d'enregistrement d'un membre*/
    $email    = "[email protected]";
    $sujet    = "Madame casino: inscription membres";
    $message  = "Nom: ".$nomutilisateur."\r\n";
    $message .= "Mail: ".$mailutilisateur."\r\n";
    $message .= "Pseudo: ".$pseudoutilisateur."\r\n";
    $message .= "Jour: ".$jourutilisateur."\r\n";
    $headers  = "From: ".$mailutilisateur ."\r\n";
    mail($email, $sujet, $message, $headers);
    
    header("Location:http://www.;;;;;;;;;;;/index.htm");
}
else
{
    $msg_erreur  = "Données incomplètes :\n";
    $msg_erreur .= "<ul>\n";
    if(empty($nomutilisateur))
    {
        $msg_erreur .= "<li>Le nom de l'utilisateur est manquant</li>\n";
    }
    if(empty($mailutilisateur))
    {
        $msg_erreur .= "<li>L'adresse de courriel de l'utilisateur est manquante</li>\n";
    }
    if(empty($pseudoutilisateur))
    {
        $msg_erreur .= "<li>Le pseudonyme de l'utilisateur est manquant</li>\n";
    }
    if(empty($jourutilisateur))
    {
        $msg_erreur .= "<li>La date est manquante.</li>\n";
    }
    $msg_erreur .= "</ul>\n";
    
    echo($msg_erreur);
}
?>
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Invité
Invité n'ayant pas de compte PHPfrance

22 oct. 2005, 10:43

c'etait ça un grand grand merci

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

22 oct. 2005, 10:44

c'etait ça un grand grand merci
c'était quoi ? :lol: