Récupérer des données dans une BDD
Valentin10
-
Alain_42 Messages postés 5413 Statut Membre -
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,
Je suis actuellement entrain de développer un site web qui demande un espce membres.
J'ai donc à l'aide de tuto réaliser un espace membres qui fonctionne parfaitement grace à PHP et MYSQL.
Mon problème est le suivant, lors de mon inscription je met un champs " Email" , celui-ci s'enregistrement parfaitement dans la base de donnée mais je voudrais savoir comment le récuperer sur ma page membre, une fois l'utilisateur logé, voici le code de ma page membre :
Voilà j'espère que vous pourez m'aider merci d'avance,
Valentin
Je suis actuellement entrain de développer un site web qui demande un espce membres.
J'ai donc à l'aide de tuto réaliser un espace membres qui fonctionne parfaitement grace à PHP et MYSQL.
Mon problème est le suivant, lors de mon inscription je met un champs " Email" , celui-ci s'enregistrement parfaitement dans la base de donnée mais je voudrais savoir comment le récuperer sur ma page membre, une fois l'utilisateur logé, voici le code de ma page membre :
<?php
session_start();
require 'conf.php';
if(isset($_COOKIE['zonemembre_login']) AND !isset($_SESSION['login']))
{
if(get_magic_quotes_gpc()===1)
{
$login=$_COOKIE['zonemembre_login'];
$passe=$_COOKIE['zonemembre_passe'];
}
else
{
$login=addslashes($_COOKIE['zonemembre_login']);
$passe=addslashes($_COOKIE['zonemembre_passe']);
}
mysql_connect($mysql_host,$mysql_login,$mysql_passe) OR die('<p>Connexion impossible à la base de données</p>');
mysql_select_db($mysql_base);
$requete=mysql_query('SELECT COUNT(*) FROM membres WHERE pseudo="'.$login.'" AND passe=md5("'.$passe.'")') OR die(mysql_error());
$r=mysql_fetch_row($requete);
$data=mysql_fetch_assoc($req);
mysql_close();
if($r[0]!=='0')
{
$_SESSION['login']=$login;
}
else
{
header('location:connexion.php');
exit;
}
}
if(isset($_SESSION['login']))
{
echo '<p>Bonjour ',$_SESSION['login'],'</p><p>Bienvenue dans votre zone membre !</p><p><a href="connexion.php?action=deconnexion">Cliquez ici pour vous déconnecter</a></p>';
}
else
{
header('location:connexion.php');
exit;
}
?>
Voilà j'espère que vous pourez m'aider merci d'avance,
Valentin
Configuration: Windows XP Internet Explorer 8.0
3 réponses
-
$r=mysql_fetch_row($requete);
$data=mysql_fetch_assoc($req);
tu ne dois faire qu'une seule fois mysql_fetch.....
car ça déplace le pointeur à chaque fois:
au premier ça lit bien la ligne 1 du résultat et le pointeur va à la fin
au deuxième tu n'as plus rien à lire donc $data ?
if($r[0]!=='0')
c'est plutotif($r[0]!='0')
car je ne pense pas que tu ai besoin de faire un test " n'est pas strictement égal " -
Merci pour la réponse,
Oui j'avais pas fais attention pour la répétition de mysql_fetch_row et mysql_fetch_assoc qui ne sert à rien.
Mais je ne vois toujours pas comment je peux récupérer mes infos dans ma base de donnés hormis le login grace à $_SESSION['login'].
Qu'elle script ou requete ou je ne sais pas quoi dois-je utiliser pour récuperer par exemple le mail de l'utilisateur qu'il a renseigné lors de son inscription et qui est donc enregistré dans la base de donnés, dsl je ne suis que débutant =S
Merci pour les éventuelles réponses qui arriverons =) -
$requete=mysql_query('SELECT * FROM membres WHERE pseudo="'.$login.'" AND passe=md5("'.$passe.'")') OR die(mysql_error()); //attention j'ai modifie ta requette ci dessus ! * veut dire tous les champs $nbr_enr_trouves=mysql_num_rows($requete); // le nombre trouves $data=mysql_fetch_assoc($req); //$data est un array qui contient toute la ligne, ses index ou clefs correspondent aux noms des champs de la BDD mysql_close(); if($nbr_enr_trouves == 1){ // un enregistrement correspond $_SESSION['login']=$login; $email= $data['email']; // si le champ de ta BDD qui contient l'adresse mail est bien 'email' sinon tu modifies }else { header('location:connexion.php'); exit; }