PHP : petit probleme avec liste des membres
Résolu/Fermé
o0leo0o
-
22 nov. 2009 à 15:37
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 - 6 déc. 2009 à 15:04
arthezius Messages postés 3538 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 - 6 déc. 2009 à 15:04
46 réponses
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
25 nov. 2009 à 13:44
25 nov. 2009 à 13:44
“J'aimerai afficher une page , avec des liens genre ça http://example.com/liste_membres.php?membre=1”
Je penses que "?page=1" donnerait mieux.
Par contre, je ne comprends pas ça :
Après tu m'expliquera ça :
Bases-toi sur ce tuto
Je penses que "?page=1" donnerait mieux.
Par contre, je ne comprends pas ça :
for ($i = 1 ; $i <= $nombreDePages ; $i++) { echo '<a href="game.php?joueur=' . $i . '">' . $i . '</a> '; }Pourquoi fais-tu un lien vers une autre page ? Essaye plutôt avec ça :
for ($i = 1 ; $i <= $nombreDePages ; $i++) { echo '<a href="liste_membre.php?page=' . $i . '">' . $i . '</a> '; }
Après tu m'expliquera ça :
if (isset($_GET['login'])) { $page = $_GET['login']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4)Sur la liste des membres, ne vois pas pourquoi nous aurions besoin du login d'un membre ! Remplace par $_GET['page'].
Bases-toi sur ce tuto
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
25 nov. 2009 à 14:23
25 nov. 2009 à 14:23
Il suffit d'écrire le lien comme ça : <a href="game.php?membre=1">o0leo0o</a>
Ensuite, tu auras une variable $_GET['membre'] dans game.php avec 1 comme valeur
Ensuite, tu auras une variable $_GET['membre'] dans game.php avec 1 comme valeur
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
5 déc. 2009 à 17:51
5 déc. 2009 à 17:51
Le requête SQL que tu cherches est l'une des plus simple.
Si tu met cette requête:
Tu n'aura plus qu'a afficher les résultats en mettant cette variable:
Exemple:
Si ton premier champ dans ta table est id puis login, tu pourra afficher le login du membre avec:
Dans ce cas, ton lien http://niarniark.pada.com/liste_membres.php?membre=1 fonctionnera.
Mais bon c'est quand même les bases.
ça sert à rien de se lancer dans un script compliqué si tu connais pas les bases.
Si tu met cette requête:
$sql='SELECT * FROM table WHERE id="'.$_GET['membre'].'"'; $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); $data = mysql_fetch_array($req);
Tu n'aura plus qu'a afficher les résultats en mettant cette variable:
$data['champ']
Exemple:
Si ton premier champ dans ta table est id puis login, tu pourra afficher le login du membre avec:
echo $data['login'];
Dans ce cas, ton lien http://niarniark.pada.com/liste_membres.php?membre=1 fonctionnera.
Mais bon c'est quand même les bases.
ça sert à rien de se lancer dans un script compliqué si tu connais pas les bases.
arthezius
Messages postés
3538
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
11 septembre 2016
475
5 déc. 2009 à 20:02
5 déc. 2009 à 20:02
Tu veux afficher une liste de membre ou la fiche d'un membre ?
Tu parlais tout a l'heure d'un lien liste_membres.php?membre=1
Si tu places membre=1 dans l'url c'est pour affiche la fiche d'un membre que tu définis dans l'url avec l'id 1 qui renverra à ta base de donnée.
Donc:
- soit tu affiches la liste des membres (dans ce cas pas de variable dans l'url la page sera simplement list_membre.php)
- soit tu affiches la fiche d'un membre précis (dans ce cas tu défini le membre que tu affichera via une variable dans l'url).
En fait le plus simple est de combiner les deux.
Tu fais une page list_membre.php et pour chaque membre tu affiches un lien qui renvoi sur la page fiche.php?id=1 par exemple.
Ce que tu me met:
Page : 1 2 3 4 5 6 7
(si je comprends bien) est un système permettant de répartir ta liste de membre sur plusieurs page gérer dynamiquement.
Essai de faire simple dans l'immédiat. Tu n'y arrive déjà que difficilement pour ce qui est uniquement les bases du PHP donc évite pour le moment d'employer des script trop complexe que tu ne pourra pas gérer toute seul. Tu pourra ensuite les intégrer.
Tu parlais tout a l'heure d'un lien liste_membres.php?membre=1
Si tu places membre=1 dans l'url c'est pour affiche la fiche d'un membre que tu définis dans l'url avec l'id 1 qui renverra à ta base de donnée.
Donc:
- soit tu affiches la liste des membres (dans ce cas pas de variable dans l'url la page sera simplement list_membre.php)
- soit tu affiches la fiche d'un membre précis (dans ce cas tu défini le membre que tu affichera via une variable dans l'url).
En fait le plus simple est de combiner les deux.
Tu fais une page list_membre.php et pour chaque membre tu affiches un lien qui renvoi sur la page fiche.php?id=1 par exemple.
Ce que tu me met:
Page : 1 2 3 4 5 6 7
(si je comprends bien) est un système permettant de répartir ta liste de membre sur plusieurs page gérer dynamiquement.
Essai de faire simple dans l'immédiat. Tu n'y arrive déjà que difficilement pour ce qui est uniquement les bases du PHP donc évite pour le moment d'employer des script trop complexe que tu ne pourra pas gérer toute seul. Tu pourra ensuite les intégrer.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
5 déc. 2009 à 21:08
5 déc. 2009 à 21:08
Je te l'ai déjà expliqué ...
Fait des liens du style "/profil.php?membre=3" où "3" est l'ID du membre dans la table.
Ensuite, utilise la variable $_GET['membre'] pour faire une requête dans la bdd pour récupérer toutes les infos sur le membre.
Fait des liens du style "/profil.php?membre=3" où "3" est l'ID du membre dans la table.
Ensuite, utilise la variable $_GET['membre'] pour faire une requête dans la bdd pour récupérer toutes les infos sur le membre.
Et voici ce que me mets la page avec ce code la :
http://img130.imageshack.us/img130/8946/screenshot021r.jpg
http://img130.imageshack.us/img130/8946/screenshot021r.jpg
oui merci ^^
mais c'est la que j'ai pris le trois quart de ce code ( livre d'or site du zero ) , et les commentaires ne sont pas bon ...
Mais enfait le premier lien est bidon , enfait le vrai lien c'est sa : http://sc.teamfr.com/game.php , c'est pour sa que ce lien réapparait
en faite ce que j'essaye de faire , c'est un jeu en ligne , et ici , c'est une page pour chaque membre .
Donc imaginon un membre qui s'appelle o0leo0o , un autre qui sappelle toto , qu'il y ait la page game.php?membre=1 ( qui afficherait o0leo0o ) , et qu'il y ait game.php?membre=2 , qui afficherait Toto
Voila
et j'ai un probleme , comme le montre le screen , qui mets le même pseudo sur toutes les pages .
mais c'est la que j'ai pris le trois quart de ce code ( livre d'or site du zero ) , et les commentaires ne sont pas bon ...
Mais enfait le premier lien est bidon , enfait le vrai lien c'est sa : http://sc.teamfr.com/game.php , c'est pour sa que ce lien réapparait
en faite ce que j'essaye de faire , c'est un jeu en ligne , et ici , c'est une page pour chaque membre .
Donc imaginon un membre qui s'appelle o0leo0o , un autre qui sappelle toto , qu'il y ait la page game.php?membre=1 ( qui afficherait o0leo0o ) , et qu'il y ait game.php?membre=2 , qui afficherait Toto
Voila
et j'ai un probleme , comme le montre le screen , qui mets le même pseudo sur toutes les pages .
euh donc si j'ai 500 membres je dois faire 500 variables ???
Je modifi quoi pour le rentrer dans le code ???
Je modifi quoi pour le rentrer dans le code ???
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
25 nov. 2009 à 14:43
25 nov. 2009 à 14:43
Non, il faut que tu utilises l'id du membre pour faire une requête SQL (avec la clause WHERE).
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 505
25 nov. 2009 à 14:51
25 nov. 2009 à 14:51
Dans ta requête SQL :
Tu t'imagines si le webmaster de CCM devait mettre à jour et ajouter chaque profil à la main !?
SELECT * FROM table WHERE id = $_GET['id']Tu ferais mieux de retourner apprendre le PHP et le SQL sur le Site du Zéro.
Tu t'imagines si le webmaster de CCM devait mettre à jour et ajouter chaque profil à la main !?
Donc , au lieu de mettre sa :
, tu veux que je mette sa :
si oui n sa fait bugger le script , et sa me mets sa sur le site :
// --------------- Etape 2 --------------- // Maintenant, on va afficher les joueurs // --------------------------------------- if (isset($_GET['login'])) { $page = $_GET['login']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4) } else // La variable n'existe pas, c'est la première fois qu'on charge la page { $page = 1; // On se met sur la page 1 (par défaut) } // On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL $premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage; $reponse = mysql_query('SELECT * FROM membres_jeu ORDER BY id DESC LIMIT ' . $premierMessageAafficher . ', ' . $nombreDeMessagesParPage); while ($donnees = mysql_fetch_array($reponse)) { echo '<p><strong>' . $donnees['login'] . '</strong> a cette adresse e-mail :<br />' . $donnees['mail'] . '</p>'; } mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o) ?>
, tu veux que je mette sa :
// --------------- Etape 2 --------------- // Maintenant, on va afficher les joueurs // --------------------------------------- if (isset($_GET['login'])) { $page = $_GET['login']; // On récupère le numéro de la page indiqué dans l'adresse (livreor.php?page=4) } else // La variable n'existe pas, c'est la première fois qu'on charge la page { $page = 1; // On se met sur la page 1 (par défaut) } // On calcule le numéro du premier message qu'on prend pour le LIMIT de MySQL $premierMessageAafficher = ($page - 1) * $nombreDeMessagesParPage; $reponse = mysql_query(SELECT * FROM membres_jeu WHERE id = $_GET['id']); while ($donnees = mysql_fetch_array($reponse)) { echo '<p><em>Joueur</em> <strong>' . $donnees['login'] . '</<br /></p>'; } mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o) ?>
si oui n sa fait bugger le script , et sa me mets sa sur le site :
Parse error: syntax error, unexpected T_STRING in /data2/www/teamfr/sc/game.php on line 48