Problème page profil m'affiche le nom de tout mes membres
Pins10
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
ThEBiShOp Messages postés 8411 Date d'inscription Statut Contributeur Dernière intervention -
ThEBiShOp Messages postés 8411 Date d'inscription Statut Contributeur Dernière intervention -
Salut a tous,
Après avoir fait l'espace membre de mon site je m'attaque maintenant aux profils ( je suis en local)
Le problème c'est que lorsque je demande a ma table d'afficher le login dans la page profil DU membre connecté il m'affiche au lieu de ça les login de tout les membres présent dans ma base de donné comme ci je lui demandais de tout les affichés :(
j'ai beau cherché mais je sais pas comment je dois m'y prendre pour qu'il affiche seulement le login du membre connecté, quelqu'un peut il m'aider?
merci d'avance
Après avoir fait l'espace membre de mon site je m'attaque maintenant aux profils ( je suis en local)
Le problème c'est que lorsque je demande a ma table d'afficher le login dans la page profil DU membre connecté il m'affiche au lieu de ça les login de tout les membres présent dans ma base de donné comme ci je lui demandais de tout les affichés :(
$reponse = $bdd->query('SELECT login FROM profil'); while ($info = $reponse->fetch()) { echo $info['login']; } $reponse->closeCursor();
j'ai beau cherché mais je sais pas comment je dois m'y prendre pour qu'il affiche seulement le login du membre connecté, quelqu'un peut il m'aider?
merci d'avance
A voir également:
- Problème page profil m'affiche le nom de tout mes membres
- Impossible de supprimer une page word - Guide
- Voir qui regarde mon profil facebook - Guide
- Qui regarde mon profil instagram - Guide
- Nom de profil facebook - Guide
- Capture d'écran photo de profil whatsapp - Accueil - Messagerie instantanée
7 réponses
il faut que tu rajoutes une clause WHERE dans ta requête pour identifier la ligne que tu souhaites afficher
salut,
la ligne que je souhaite affiché est déjà identifié
Ici c'est la ligne login de la table profil
maintenant le problème est que je veux qu'il m'affiche le login du membre connecté, pas tout les login de ma bdd
la ligne que je souhaite affiché est déjà identifié
('SELECT login FROM profil')
Ici c'est la ligne login de la table profil
maintenant le problème est que je veux qu'il m'affiche le login du membre connecté, pas tout les login de ma bdd
oui... donc, il faut ajouter un WHERE...
ta requête te renvoie toutes les lignes, c'est tout à fait normal.
Donc je répète, il faut que tu identifies la ligne que tu veux, grâce au where...
Quand tu arrives sur cette page, tu connais quoi de ton user ? Son id ? son login ?
Ta requête de connexion, elle ressemble à quoi ?
ta requête te renvoie toutes les lignes, c'est tout à fait normal.
Donc je répète, il faut que tu identifies la ligne que tu veux, grâce au where...
Quand tu arrives sur cette page, tu connais quoi de ton user ? Son id ? son login ?
Ta requête de connexion, elle ressemble à quoi ?
En fait a la base j'ai deux tables, une table membre et une table profil. Quand le membre s'enregistre sur le site il y a son id,son login,son pass , son email qui va dans la table membre et son id,son login,son email,son sex,son pays,sa date de naissance qui va dans la table "profil"
voici le code entier de ma page profil.php:
Pour l'instant je n'est encore rien fait sur cette page, j'essaye juste d'afficher le pseudo du membre qui la consulte.
Pour le WHERE je sais pas du tout ou le placer ici. j'ai essayé de différente façon et j'ai a chaque fois un message d'erreur :/
voici le code entier de ma page profil.php:
{ <?php session_start(); try { $bdd = new PDO('mysql:host=localhost;dbname=bddtest','root',''); } catch (Exception $e) { die('Erreur : '.$e->getMessage()); } $bdd->exec("SET CHARACTER SET utf8"); $reponse = $bdd->query("SELECT login FROM profil"); while ($info = $reponse->fetch()) { echo $info['login']; } $reponse->closeCursor(); ?>
Pour l'instant je n'est encore rien fait sur cette page, j'essaye juste d'afficher le pseudo du membre qui la consulte.
Pour le WHERE je sais pas du tout ou le placer ici. j'ai essayé de différente façon et j'ai a chaque fois un message d'erreur :/
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
SELECT login FROM profil WHERE id='chose'
C'est le B-A-BA du SQL, je te conseille de pencher un peu dessus, sinon tu risques de buter très souvent sur ce genre de problème.
Pourquoi tu as 2 tables différentes ? Tu ne pourrais pas en avoir une seul en mettant de mot de passe dans la table profil ?
C'est le B-A-BA du SQL, je te conseille de pencher un peu dessus, sinon tu risques de buter très souvent sur ce genre de problème.
Pourquoi tu as 2 tables différentes ? Tu ne pourrais pas en avoir une seul en mettant de mot de passe dans la table profil ?
en effet il serait plus judicieux d'avoir qu'une seule table. J'apprends a coder en php/sql depuis seulement 15 jours et mon défaut je pense est de vouloir allez trop vite, du coup je fais certaines choses un peu n'importe comment .
donc je viens d'essayer avec le WHERE et l'id du membre c'est parfait je vois le pseudo en question mais que va il se passer maintenant si je me connecte avec un autre pseudo et que je vais dans la page profil? je risque de tomber sur le profil de l'id que j'ai choisis dans la requete non?
donc je viens d'essayer avec le WHERE et l'id du membre c'est parfait je vois le pseudo en question mais que va il se passer maintenant si je me connecte avec un autre pseudo et que je vais dans la page profil? je risque de tomber sur le profil de l'id que j'ai choisis dans la requete non?
Ce qu'on fait en général, c'est qu'on utilise une variable session, qui va permettre de garder des données d'une page à l'autre
à la connexion tu stock ton id dans $_SESSION['id'] et dans ton profil, tu utilises cet id
pour utiliser les variables sessions, tu dois commencer toutes tes pages où tu vas les utiliser par session_start(); (avant tout envoie de données html)
https://www.php.net/manual/fr/function.session-start.php
à la connexion tu stock ton id dans $_SESSION['id'] et dans ton profil, tu utilises cet id
pour utiliser les variables sessions, tu dois commencer toutes tes pages où tu vas les utiliser par session_start(); (avant tout envoie de données html)
https://www.php.net/manual/fr/function.session-start.php