Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD > PHP & MySQL
PHP & MySQL Forum d'entraide sur les fonctions MySQL avec PHP. Avant de poster -> FAQ MySQL, Cours MySQL et Sources MySQL. Pour les questions concernant le moteur MySQL plutôt que les fonctions PHP, merci d'utiliser le forum MySQL.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/01/2011, 20h15   #1
Futur Membre du Club
 
Homme olivier lebaron
Webmaster
Inscription : octobre 2007
Messages : 125
Détails du profil
Informations personnelles :
Nom : Homme olivier lebaron
Localisation : France, Drôme (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster

Informations forums :
Inscription : octobre 2007
Messages : 125
Points : 18
Points : 18
Par défaut requete sql php

bonjour, voila j'ai créer un site avec un espace membre, je voudrais faire une requete pour pouvoir afficher les membre en ligne (pseudo et image)
sachant que ma base sessions est users_sessions
merci

ps : je suis novice en sql
asus02 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2011, 23h23   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Une solution est d'enregistrer l'heure pour le membre a chaque fois qu'il effectue une action.
La liste des connectés est alors la liste des utilisateurs ayant fait une action dans les x dernieres minutes.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/01/2011, 23h50   #3
Futur Membre du Club
 
Homme olivier lebaron
Webmaster
Inscription : octobre 2007
Messages : 125
Détails du profil
Informations personnelles :
Nom : Homme olivier lebaron
Localisation : France, Drôme (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster

Informations forums :
Inscription : octobre 2007
Messages : 125
Points : 18
Points : 18
oui j'avais bien compris et d'ailleur je voit bien que je suis conecté mais il recupere l'adresse ip et m'indique un visiteur en ligne, j'aimerais pour voir leurs pseudo et image .


par contre le format est tres bizarre an affichage :

Visiteur en ligne: 1SELECT * FROM whoisonline WHERE cTimeName > '1294526395' 1

maintenant j'aimerais voir le pseudo et l'image et le nombre de connectés.

la structure de ma base :

cIpName varchar(20)
cTimeName int(50)

Code :
1
2
3
4
5
$sql = "SELECT * FROM ".$tblInfo['name']." WHERE ".$tblInfo['cTimeName']." > '".(time()-$updateTime)."'";
$result = mysql_query($sql);
$nbResult = mysql_num_rows($result);
echo 'Visiteur en ligne: '.$nbResult;
echo $sql." ".$nbResult
edit : en retirant echo $sql." ".$nbResult j'ai juste visiteur en ligne 1

alors ma question est comment je peut modifier ma table pour que je voit le pseudo et l'image du connecté ?
asus02 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 09h54   #4
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Tes champs IP et Date peuvent etre mis dans ta table Utilisateur qui doit déjà contenir le pseudo et l'image.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 10h00   #5
Futur Membre du Club
 
Homme olivier lebaron
Webmaster
Inscription : octobre 2007
Messages : 125
Détails du profil
Informations personnelles :
Nom : Homme olivier lebaron
Localisation : France, Drôme (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster

Informations forums :
Inscription : octobre 2007
Messages : 125
Points : 18
Points : 18
j'ai essayé ceci mais j'ai un message d'erreur ..

Code :
1
2
3
4
$sql = "SELECT * FROM  whoisonline as  t_une, devolia_rsed_users_sessions as t_deux  WHERE t_une.cIpName = t_deux.IP AND t_une.cTimeName >";
$result = mysql_query($sql); 
$nbResult = mysql_num_rows($result); 
echo 'visiteur en ligne: '.$nbResult;


Citation:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /public_html/grpminfo-site/face/devoliarsed-custom/themes/default/includes/php/getOnlinePeople.php on line 21
la ligne 21 : $nbResult = mysql_num_rows($result);
asus02 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 11h51   #6
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Il manque la fin de ta requete et ta jointure est mal écrite

Code :
$sql = "SELECT * FROM  whoisonline as  t_une JOIN devolia_rsed_users_sessions as t_deux  ON t_une.cIpName = t_deux.IP WHERE t_une.cTimeName > UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL 15 MINUTE))";
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 12h03   #7
Futur Membre du Club
 
Homme olivier lebaron
Webmaster
Inscription : octobre 2007
Messages : 125
Détails du profil
Informations personnelles :
Nom : Homme olivier lebaron
Localisation : France, Drôme (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster

Informations forums :
Inscription : octobre 2007
Messages : 125
Points : 18
Points : 18
bon en faite j'avais glissé une erreur qui est corrigée.

par contre voila en faite le shema que je voudrais.

j'ai 3 tables : whoisonline qui recupere mon ip lorsque que je me connect
users_sessions qui recupere mon ip et id
user_profil qui stock mon nom et prenom et id

mais lorsque que je me connect il n'y a que users_session qui affiche une ligne supplémentaire.

ce que je voudrais faire :

que woisline/cIpName soit egale a users_sessions/IP qui soit egale a users_sessions /id pour afficher user_profil/name et firstname

quand je fait :
Code :
$sql = "SELECT * FROM whoisonline  as  t_une, devolia_rsed_users_sessions as t_deux  WHERE t_une.cIpName = t_deux.IP  ";
j'ai inscrit "visiteur en ligne : 1 (ce qui correspond a mon id dans users_sessions)

quand je fait :
Code :
$sql = "SELECT * FROM whoisonline  as  t_une, devolia_rsed_users_sessions as t_deux  WHERE t_une.cIpName = t_deux.id  ";
j'ai inscrit "visiteur en ligne : 8 (ce qui correspond au nombre de ligne dans users_sessions)

donc mon objectif est d'afficher le nom et prenom (name et firstname) qui se trouve dans la troisieme table user_profil.
asus02 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 12h11   #8
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Voir ma réponse au dessus.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 12h17   #9
Futur Membre du Club
 
Homme olivier lebaron
Webmaster
Inscription : octobre 2007
Messages : 125
Détails du profil
Informations personnelles :
Nom : Homme olivier lebaron
Localisation : France, Drôme (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster

Informations forums :
Inscription : octobre 2007
Messages : 125
Points : 18
Points : 18
merci pour cette correction.

par contre je n'est toujours que le nombre de connecte ou mon id qui est 1 car le nom se trouve dans une autre table mais qui ne bouge pas (pas de nouvelle ligne) quand je me connecte

http://fr-findshare.grpminfo.fr/devo...ult/index1.php
asus02 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 14h37   #10
Futur Membre du Club
 
Homme olivier lebaron
Webmaster
Inscription : octobre 2007
Messages : 125
Détails du profil
Informations personnelles :
Nom : Homme olivier lebaron
Localisation : France, Drôme (Rhône Alpes)

Informations professionnelles :
Activité : Webmaster

Informations forums :
Inscription : octobre 2007
Messages : 125
Points : 18
Points : 18
je vient d'essayer ceci mais j'ai une message d'erreur


Parse error: syntax error, unexpected T_LNUMBER


Code :
1
2
$sql = SELECT t_trois.name, t_trois.firstname, t_une.ip FROM (whoisonline AS  t_une INNER JOIN devolia_rsed_users_sessions AS t_deux) ON t_une.cIpName = t_deux.id INNER JOIN devolia_rsed_user_profil AS t_trois ON t_deux.id = t_trois.id
WHERE t_une.cTimeName > UNIX_TIMESTAMP(DATE_SUB(CURDATE(), INTERVAL 1 MINUTE));
asus02 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/01/2011, 19h32   #11
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Il manque un guillemet pour commencer ta chaine.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h18.


 
 
 
 
Partenaires

Hébergement Web