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
Cherche par toi même, et fini d'apprendre le PHP avant de trop vouloir bidouiller (mais c'est bien de vouloir modifier les exemples)
Je l'ai fini , le tuto sur le PHP ...
mais bon .. je vais essayer , mais , tu peux pas me le donner ? :-D
mais bon .. je vais essayer , mais , tu peux pas me le donner ? :-D
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Refais le script, en sachant comment procéder maintenant (avec ?membre={id} dans l'url).
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/913348-variables-superglobales#ss_part_1
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/913348-variables-superglobales#ss_part_1
Voila le code qui est mis sur le site du zero :
( c'est le début )
mais la il y a qu'une seule variable !
comment faire la variable avec tout les membres qui sont enregistrés ???
<?php session_start(); // On démarre la session AVANT toute chose // On s'amuse à créer quelques variables de session : $_SESSION['prenom'] = 'Jean'; $_SESSION['nom'] = 'Dupont'; $_SESSION['age'] = 24; // Maintenant que le session_start est fait, on peut taper du code HTML ?>
( c'est le début )
mais la il y a qu'une seule variable !
comment faire la variable avec tout les membres qui sont enregistrés ???
Merci pour ta réponse , j'ai essayé ton code , et voila ce que sa m'a mit :
Page : 1 2 3 4 5 6 7 Erreur SQL !
SELECT * FROM table WHERE id=""
Erreur de syntaxe près de 'table WHERE id=""' à la ligne 1
Page : 1 2 3 4 5 6 7 Erreur SQL !
SELECT * FROM table WHERE id=""
Erreur de syntaxe près de 'table WHERE id=""' à la ligne 1
J'ai corrigé , et maintenant sa me mets sa :
Page : 1 2 3 4 5 6 7
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /data2/www/teamfr/sc/game.php on line 53
Page : 1 2 3 4 5 6 7
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /data2/www/teamfr/sc/game.php on line 53
L'idéal n'est pas qu'on te mache le travail mais plutôt que tu essai de comprendre ce que tu fais et que tu soit à même de trouver seul les solutions aux messages d'erreur.
Sans ça tu va venir ici au moindre message d'erreur dans comprendre le pourquoi du comment.
ça ne sert à rien du tout car tu n'apprends rien.
Ce message:
Il veux dire quoi ?
Regardons de plus près:
C'est la fonction PHP que tu as utilisé.
Où ?
Donc à la ligne 53 de ton script dans le fichier game.php.
C'est donc là qu'il faut regarder.
Vérifie donc ce que tu as mis à cet endroit. Regarde sur les documentations que tu trouves sur internet en prenant comme base les différents exemple que tu y trouvera.
C'est comme ça que tu apprendra.
N'hésite pas a entrer sur Google une partie du message d'erreur pour tomber sur des forums ou d'autre on eu les même erreurs que toi.
Sans ça tu va venir ici au moindre message d'erreur dans comprendre le pourquoi du comment.
ça ne sert à rien du tout car tu n'apprends rien.
Ce message:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /data2/www/teamfr/sc/game.php on line 53
Il veux dire quoi ?
Regardons de plus près:
mysql_fetch_array()
C'est la fonction PHP que tu as utilisé.
Où ?
on line 53
Donc à la ligne 53 de ton script dans le fichier game.php.
C'est donc là qu'il faut regarder.
Vérifie donc ce que tu as mis à cet endroit. Regarde sur les documentations que tu trouves sur internet en prenant comme base les différents exemple que tu y trouvera.
C'est comme ça que tu apprendra.
N'hésite pas a entrer sur Google une partie du message d'erreur pour tomber sur des forums ou d'autre on eu les même erreurs que toi.
Page : 1 2 3 4 5 6 7
voila ce que sa maffiche mtn
j'ai réussi a corriger l'erreur ( tout seul ! )
mais sa ne maffiche pas les membres enregistrés...
Ok c'est compris
Ce que j'essaie de faire , c'est une page pour chaque membre , une fiche d'un membre pour tout les membres ...
Voila
Ce que j'essaie de faire , c'est une page pour chaque membre , une fiche d'un membre pour tout les membres ...
Voila
<?php mysql_connect(""); mysql_select_db(""); // --------------- 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; $sql='SELECT * FROM membres_jeu WHERE id="'.$_GET['membre'].'"'; $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); $data = mysql_fetch_array($req); while ($data = mysql_fetch_array($req)) { echo '<p><em>Joueur</em> <strong>' . $data['login'] . '<br /></p>'; } mysql_close(); // On n'oublie pas de fermer la connexion à MySQL ;o) ?>
je n'ai pas trop compris...enfin si mais sa reste un peu vague
enfin
voila mon code au dessus , peutetre serais ce un peu plus clair...
while ($data = mysql_fetch_array($req)) { echo '<p><em>Joueur</em> <strong>' . $data['login'] . '<br /></p>'; }
Il suffit de faire ça si ta table contient un champ "id" :
while ($data = mysql_fetch_array($req)) { echo '<p><em>Joueur</em> <strong><a href="profil.php?id='.$data['id'].'">' . $data['login'] . '</a><br /></p>'; }