[PHP-MySQL]Récupéré le résultat d'une requète

Fermé
Mélichouchou Messages postés 70 Date d'inscription mardi 18 janvier 2005 Statut Membre Dernière intervention 8 novembre 2005 - 8 nov. 2005 à 00:51
 doug2109 - 30 mai 2016 à 11:22
Salut à tous!

J'ai fait un site où l'utilisateur se loggue avec son login et son mot de passe, je stocke déjà ces données dans des variables de session:
$_SESSION['Login']=$Login;
$_SESSION['Motdepasse']=$Motdepasse;


Cependant, je veux récupérer l'id de l'utilisateur en utilisant une requête mysql (vu que le login est unique, à partir de celui-ci je peux donc avoir l'identitfiant de l'utilisateur):
$requête=mysql_query("SELECT user_id FROM user WHERE login='$Login' ");


Je veux récuperer ce résultat dans une variable que je mettrais dans une variable de session, mais je ne sais pas comment récupérer un seul résultat d'une requête sql ni comment le stocker dans une variable (que je mettrais par la suite dans une variable de session comme pour le login et le mot de passe).

4 réponses

GallyNet Messages postés 434 Date d'inscription mardi 1 juin 2004 Statut Membre Dernière intervention 15 décembre 2008 386
8 nov. 2005 à 07:36
Quand tu exécute ta requete, tu récupère le résultat dans une variable. 5attention ce n'est pas le résultat de la requete,mais une ressource mysql) :
$result=mysql_query($requete);


Après, tu peut récupéré les valeurs de différentes manière :
mysq_result() permet de récupéré une valeur à la fois
mysql_fecth_array() retourne une ligne sous la forme dans tableau
mysql_fetch_object() retourne une ligne sous la forme d'un objet
...

A toi de choisir celle que tu veut. (mysq_result() est utilie si tu veut récuépé qu'une seul valeur, à partir de deux valeur les fonction du type mysql_fecth_array() sont plus rapide).

Pour savoir comment marche c'est fonction, utilise une bonne documentation http://www.php.net/mysql
35
merci gallynet pour tes connaissance precieuse
0
ATTENTION ! Les fonctiones mysql_ sont désormais obsolètes !! (Vérifier la date des posts)
Veuillez utiliser la classe PDO et les fonctiones associées : fetch() - fetchAll() - query() - exec() - etc
1
oui man au lieu d'un simple select, tu utilise un select distinct
2
focntionne ausi avec group by

;)
2
slt tout le monde,
je veux savoir cmt récupérer le résultat d'une requête ds un tableau et puis suprimer les doublants de ce dernier en PHP.
je travaille sur les fichiers log, je veux récupérer les adresses ip qui ont visité un tel site web(ici par exp:google) sans avoir des répétition des ips( par exemple: j'ai
172.16.29.126
172.16.12.223
172.16.12.223
172.16.12.223
172.16.12.223
172.16.29.126
donc il faut avoir comme resultat:
172.16.29.126
172.16.12.223)
voici mon script en PHP à corriger:
<?php
$site='google';

$connection=mysql_connect("localhost", "root", "");
  mysql_select_db("log");
$query = "SELECT * FROM logsteg";
$result = mysql_query($query) or ERROR(mysql_error()."<br><br>".$query);
$sql="SELECT site, ip FROM logsteg WHERE site like '%$site%' ";
$result = mysql_query($sql);
$nb= mysql_query("SELECT count(ip) as site  FROM logsteg where site like '%$site%'"); 

 ?> Le site "<?echo $site?>" a été visité <?echo mysql_result($nb, 0);?> fois par les adresses IP:<br>
 <?
 $N= mysql_result($nb,0);
 while($tableau = mysql_fetch_array($result)) 
{ 
echo '<tr><td>',$tableau['ip'],'</td></tr>';

   ?><br> <?  
}
 
$tab=array();

 
 

 $tableau = mysql_fetch_array($result);
 
  for($i=1; $i<=$N; $i++)
 {
  $tab[$i]=$tableau['ip'];
     
}

  echo '<pre>';
       print_r($tab);
  echo '</pre>';
for($i=1; $i<=$N; $i++)
{


if(in_array($tab[$i], $tab))
 { 
  echo $tab[1];
?> <br><?  
 unset($tab[1]) ;
 $el = array_shift($tab);
}
}
  
 
?>
0