Récupérer des données dans une BDD

Valentin10 -  
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 :

<?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

3 réponses

Alain_42 Messages postés 5413 Statut Membre 894
 
$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 plutot
if($r[0]!='0')
car je ne pense pas que tu ai besoin de faire un test " n'est pas strictement égal "
0
Valentin 10
 
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 =)
0
Alain_42 Messages postés 5413 Statut Membre 894
 
$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;
	}

0