ok merci!mais j'ai reussi a le faire tout seul!

sans requete préparé puisqu'il est vrai que c'est inutil .
Alors la il ne me reste qu'un dernier problème et mes scripts d'inscription/confirmation php seront terminés

.
Lorsque le visiteur enttre ses identifiants dans le formlaire(au debut de cette page il y a un session_start()), je recupere es valeurs dans la page cible et dans cette page cible j'ai besoin d'utiliser la variable $_SESSION pour recuperer 3 variables pour les utiliser dans la page de confirmation,mais j'ai un problème:
script de ma page cible du formulaire:
<?php
session_start();
$_SESSION['mail']=$_POST['mail'];
$_SESSION['passwd']=$_POST['passwd'];
$_SESSION['ville']=$_POST['ville'];
$mail = htmlentities($_POST['mail']);
$nom_site = "quelquechose";
$email_admin = "[email protected]";
// on teste l'existence de nos variables. On teste également si elles ne sont pas vides //
if (( empty($_POST['login'])) || (empty($_POST['passwd'])) || (empty($_POST['passwdc'])) || ( empty($_POST['ville'])) || (empty($_POST['mail'])))
{
echo 'Un ou plusieurs champs ne sont pas remplis, <a href="javascript:history.back(1)">Retour au formulaire</a>';
exit();
}
elseif ((!empty($_POST['login'])) && (!empty($_POST['passwd'])) && (!empty($_POST['passwdc'])) && (!empty($_POST['ville'])) && (!empty($_POST['mail'])))
{
$base = mysql_connect ('...') or die('Erreur de connexion '.mysql_error());
mysql_select_db('...',$base) or die('Erreur de selection '.mysql_error());
// on recherche si ce login est déjà utilisé par un autre membre
$sql = 'SELECT count(*) FROM pdf_membre WHERE login="'.mysql_escape_string($_POST['login']).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
if ($data[0] > 0)
{
echo 'Un membre possède déjà ce login ==> <a href="javascript:history.back(1)">Retour au formulaire</a>';
}
}
//else {
/*if*/if (preg_match("!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!", $mail)) //Verifie que l'email entrée n'est pas une fausse.
{
$chaine = "abcdefghijklmnopqrstuvwxyz0123456789";
$confirm = str_shuffle($chaine); //On créé le code de confirmation
$login = htmlentities($_POST['login']); //On recupère les infos
$passwd = htmlentities($_POST['passwd']);
$passwdc = htmlentities($_POST['passwdc']);
$ville = htmlentities($_POST['ville']);
/*On Fait la variable contenant le mail de confirmation*/
$message1 = '<html><body>Bonjour ' . $login . ' et bienvenue sur ' .$nom_site. '.</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 .= 'Voici un rappel de vos identifiants, notez les précieusement : <br>';
$message1 .= 'Votre Pseudo :' . $login .'.<br>';
$message1 .= 'Votre Mot de passe:' . $passwd .'.<br><br>';
$message1 .= 'Votre Mail:' . $mail .'.<br><br>';
$message1 .= 'Votre Ville:' . $ville .'.<br><br>';
$message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre à jour.<br>';
$message1 .= 'Votre Clé d\'activation:<br>';
$message1 .= 'www.....fr/confirm.php?login=' . str_replace(' ','%20',$login) . '&confirm=' . $confirm . '<br><br>';
$message1 .= 'A très bientôt sur le site!<br>L\'équipe de ' .$nom_site. '.<br><a href="www.....fr">' .$nom_site. '</a>';
$verification = mysql_query("SELECT COUNT(*) FROM pdf_membre WHERE login='$login' OR mail='$mail'") or die (mysql_error());
$donnees = mysql_fetch_array($verification)or die (mysql_error());
if( $passwd != $passwdc) //On verifie que les 2 pass sont identiques
{
echo 'Les mots de passe ne sont pas identiques ==> <a href="javascript:history.back(1)">Retour au formulaire</a>';
}
else //Si tout est bon on entre la clé(les données )dans la BDD et on envoye le mail
{
$login = mysql_real_escape_string($login); //On protege les infos
$passwd = mysql_real_escape_string($passwd);
$passwdc = mysql_real_escape_string($passwdc);
$ville = mysql_real_escape_string($ville);
$confirm = mysql_real_escape_string($confirm);
$mail = mysql_real_escape_string($mail);
//mysql_query("INSERT INTO pdf_membre (id,login,passwd,mail,ville) VALUES ('','$login', '$passwd', '$mail', '$ville')");
mysql_query("INSERT INTO pdf_membre (confirm) VALUES ('$confirm')");
echo 'Bravo, vous êtes maintenant inscrit sur ' .$nom_site. '. <br>Vous allez recevoir un e-mail pour activer votre compte. <br><a href="/index.php">Retour à l\'Accueil</a>';
$entete = "MIME-Version: 1.0\r\n";
$entete .= "Content-type: text/html; charset=iso-8859-1\r\n";
$entete .= "From: <$email_admin>\r\n";
$entete .= "Reply-To: $email_admin\r\n";
mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login .'.' , $message1, $entete);
}
}
else
{ echo ' L\'adresse email entrée n\'existe pas ==> <a href="javascript:history.back(1)">Retour au formulaire</a>';}
mysql_close($base); //On se deconnecte
?>
<html>
<body>
<!-- On affiche la reponse de tout le code du dessus -->
</body>
</html>
Script de la page de confirmation:
<?php
session_start();
$_SESSION['mail']=$mail;
$_SESSION['passwd']=$passwd;
$_SESSION['ville']=$ville;
//on verifie si les variables ne sont pas vides
if (!isset($_GET['login']))//si le login n'existe pas...
{
echo 'erreur: pas de login fourni';
exit();
}
if ( !isset($_GET['confirm']) )
{
echo 'erreur: pas de code de confirmation';
exit();
}
$base = mysql_connect ('...') or die('Erreur de connexion '.mysql_error());
mysql_select_db('...',$base) or die('Erreur de selection '.mysql_error());
// Récupération des variables nécessaires à l'activation
$login = $_GET['login'];
$cle = $_GET['confirm'];
$reponse = mysql_query ("SELECT actif FROM pdf_membre "); //On recupère les infos à partir du pseudo $reponse = mysql_query ("SELECT * FROM pdf_membre WHERE login='$login'");//
$donnees = mysql_fetch_array ($reponse);
$actif = $donnees['actif'];
$reponse1 = mysql_query ("SELECT confirm FROM pdf_membre "); //On recupère les infos à partir du pseudo $reponse = mysql_query ("SELECT * FROM pdf_membre WHERE login='$login'");//
$donnees = mysql_fetch_array ($reponse1);
$clebdd = $donnees['confirm'];
//Faut utiliser une variable session pour "appeler les variables ville mail et lautre"pour pouvoir les stocker
// Récupération de la clé correspondant au $login dans la base de données
/*$stmt = $base->prepare("SELECT confirm,actif FROM pdf_membre WHERE login like :login ");
if($stmt->execute(array(':login' => $login)) && $row = $stmt->fetch())
{
$clebdd = $row['confirm']; // Récupération de la clé
$actif = $row['actif']; // $actif contiendra alors 0 ou 1
}
*/
//$sql = 'SELECT confirm,actif FROM pdf_membre WHERE login like %$login%';
$result = mysql_query("SELECT `confirm`,`actif` FROM `pdf_membre` WHERE `login` like '%$login%'") or exit(mysql_error());
$row= mysql_fetch_assoc($result);
if($result && $row)
{
$clebdd = $row['confirm']; // Récupération de la clé
$actif = $row['actif']; // $actif contiendra alors 0 ou 1
}
// On teste la valeur de la variable $actif récupéré dans la BDD
if($actif == '1') // Si le compte est déjà actif on prévient
{
echo "Votre compte est déjà actif !";
}
else // Si ce n'est pas le cas on passe aux comparaisons
{
if($cle == $clebdd) // On compare nos deux clés
{
// Si elles correspondent on active le compte !
mysql_query("UPDATE pdf_membre SET actif = 1 where login like '$login'");
mysql_query("INSERT INTO pdf_membre (id,login,passwd,mail,ville) VALUES ('','$login', '$passwd', '$mail', '$ville')") or exit(mysql_error());
echo "Votre compte a bien été activé !";
}
else // Si les deux clés sont différentes on provoque une erreur...
{
echo "Erreur ! Votre compte ne peut être activé...";
}
}
mysql_close($base);
?>
<html>
<body>
</body>
</html>
et voici le message d'erreur quand je clic sur le lien d'activation recu dans le mail:
Notice: Undefined variable: mail in /homez.466/animejap/www/confirm.php on line 4
Notice: Undefined variable: passwd in /homez.466/animejap/www/confirm.php on line 5
Notice: Undefined variable: ville in /homez.466/animejap/www/confirm.php on line 6
Erreur ! Votre compte ne peut être activé...