PHP : petit probleme avec liste des membres

Résolu
o0leo0o -  
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
A voir également:

46 réponses

o0leo0o
 
Il y a quelqu'un ?
0
avion-f16 Messages postés 19252 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
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)
0
o0leo0o
 
Je l'ai fini , le tuto sur le PHP ...
mais bon .. je vais essayer , mais , tu peux pas me le donner ? :-D
0
o0leo0o
 
... tj pas trouvé
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
o0leo0o
 
stp donne moi le code
ou alors une astuce , un indice pour trouver !
^-^
0
o0leo0o
 
...
0
o0leo0o
 
..............
0
o0leo0o
 
sniff :'-(
allez stp
0
avion-f16 Messages postés 19252 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
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
0
o0leo0o
 
je n'arrive toujours pas...
0
o0leo0o
 
Voila le code qui est mis sur le site du zero :

<?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 ???
0
o0leo0o
 
???
0
o0leo0o
 
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
0
o0leo0o
 
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
0
arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
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:
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.
0
o0leo0o
 
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...
0
o0leo0o
 
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
0
o0leo0o
 
<?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...
0
avion-f16 Messages postés 19252 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
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>';
}
0
o0leo0o
 
Sa n'a absolument rien changé..
0
avion-f16 Messages postés 19252 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
Normalement si, il devrait y avoir un lien.
0