PHP confirmation d'inscription par mail

Résolu
greg -  
 greg -
Bonjour,

alors voila mon problème: je souhaite créer un système d'inscription + confirmation par mail.
j'envoie donc par mail une clé (qui a été sauvegardé avant dans la base de donnée) et le pseudo de la personne pour retrouver la clé par la suite.
mon principe: avec le pseudo je retrouve la clé que je compare à celle enregistrée dans le mail.
sauf que ma requête ne semble pas recevoir le pseudo enregistré dans le mail... (confirmation après test que le problème vient de la)

voila mon code:

inscription

  $destinataire = $email;
$sujet = "blabla" ;
$entete = "blabla" ;
  
  $message = '

http://monsite/activation.php?login='.urlencode($login).'&cle='.urlencode($cle).'

blabla';


mail($destinataire, $sujet, $message, $entete) ;


la réception du mail marche.

activation:

$login = $_GET['login'];
$cle = $_GET['cle'];
		
	

  $sql = "SELECT cle, actif FROM Utilisateur WHERE pseudo='$login' ";
$data=mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error()); 

$clebdd= $data['cle'];
$actif= $data['actif'];


et à partir de la je ne récupère toujours pas les valeurs de data 'actif' et data 'clé'


si quelqu'un a une idée sur le problème... je le remercierai beaucoup!
A voir également:

3 réponses

JooS Messages postés 2468 Date d'inscription   Statut Membre Dernière intervention   228
 
Salut,
Moi j'aurais utiliser l'id au lieu du pseudo de l'utilisateur.

Sinon, t'as penser a urldecode() ?!

Si t'utilise le pseudo malgré tout, alors je te conseille d'interdire les caractères spéciaux (espaces, caractères non alphabétique, ... )

Mettez en résolu quand c'est résolu -.- ...
0
Profil bloqué
 
ton probleme vient de la partie SQL il manque le fetch_array

remplace
$sql = "SELECT cle, actif FROM Utilisateur WHERE pseudo='$login' ";
$data=mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

par

$sql = "SELECT cle, actif FROM Utilisateur WHERE pseudo='$login' ";
$data1=mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
$data = mysql_fetch_array($data1);

aussi je suis d'accord avec Joos mieux vaut remplacer pseudo par un id au mois ca marchera à tous les coups

a+
0
JooS Messages postés 2468 Date d'inscription   Statut Membre Dernière intervention   228
 
Ah oui, bien vu.
0
greg
 
tout marche très bien. merci de votre réponse et conseil! erreur stupide...
0