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
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

Il y a quelqu'un ?
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
25 nov. 2009 à 16:04
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
Je l'ai fini , le tuto sur le PHP ...
mais bon .. je vais essayer , mais , tu peux pas me le donner ? :-D
0
... tj pas trouvé
0

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

Posez votre question
stp donne moi le code
ou alors une astuce , un indice pour trouver !
^-^
0
...
0
..............
0
sniff :'-(
allez stp
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
26 nov. 2009 à 17:29
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
je n'arrive toujours pas...
0
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
???
0
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
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 jeudi 15 mai 2008 Statut Membre Dernière intervention 11 septembre 2016 475
5 déc. 2009 à 18: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:
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
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
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
<?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 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
5 déc. 2009 à 21:21
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
Sa n'a absolument rien changé..
0
avion-f16 Messages postés 19250 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 22 décembre 2024 4 505
5 déc. 2009 à 21:55
Normalement si, il devrait y avoir un lien.
0