PHP : petit probleme avec liste des membres
Résolu
o0leo0o
-
arthezius Messages postés 3538 Date d'inscription Statut Membre Dernière intervention -
arthezius Messages postés 3538 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai quelques problemes en PHP :
• J'aimerai afficher une page , avec des liens genre ça : http://niarniark.pada.com/liste_membres.php?membre=1
Mais mon code , n'affiche pas ce que je voulais ...
Sur toutes les pages ( membre=1 , membre=302 ) , il me mets le nom du dernier membre enregistré , au lieu de mettre un nom different sur chaque page ...
voila le code php :
<?php
mysql_connect("localhost ici sa marche :-P
mysql_select_db("dbase17780");
// --------------- Etape 1 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------
// On met dans une variable le nombre de joueurs qu'on veut par page
$nombreDeMessagesParPage = 1; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS id FROM membres_jeu');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['id'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="game.php?joueur=' . $i . '">' . $i . '</a> ';
}
?>
<?php
// --------------- 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)
?>
Quelqu'un peu m'aider ?
je sais que j'ai fait une erreur quelque parts mais je sais pas comment l'arranger ...
Désolé de vous déranger pour si peux ...
A bientot ,
Leo
J'ai quelques problemes en PHP :
• J'aimerai afficher une page , avec des liens genre ça : http://niarniark.pada.com/liste_membres.php?membre=1
Mais mon code , n'affiche pas ce que je voulais ...
Sur toutes les pages ( membre=1 , membre=302 ) , il me mets le nom du dernier membre enregistré , au lieu de mettre un nom different sur chaque page ...
voila le code php :
<?php
mysql_connect("localhost ici sa marche :-P
mysql_select_db("dbase17780");
// --------------- Etape 1 -----------------
// On écrit les liens vers chacune des pages
// -----------------------------------------
// On met dans une variable le nombre de joueurs qu'on veut par page
$nombreDeMessagesParPage = 1; // Essayez de changer ce nombre pour voir :o)
// On récupère le nombre total de messages
$retour = mysql_query('SELECT COUNT(*) AS id FROM membres_jeu');
$donnees = mysql_fetch_array($retour);
$totalDesMessages = $donnees['id'];
// On calcule le nombre de pages à créer
$nombreDePages = ceil($totalDesMessages / $nombreDeMessagesParPage);
// Puis on fait une boucle pour écrire les liens vers chacune des pages
echo 'Page : ';
for ($i = 1 ; $i <= $nombreDePages ; $i++)
{
echo '<a href="game.php?joueur=' . $i . '">' . $i . '</a> ';
}
?>
<?php
// --------------- 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)
?>
Quelqu'un peu m'aider ?
je sais que j'ai fait une erreur quelque parts mais je sais pas comment l'arranger ...
Désolé de vous déranger pour si peux ...
A bientot ,
Leo
A voir également:
- PHP : petit probleme avec liste des membres
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
46 réponses
“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
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
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.
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
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 ???
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