Données dans tableau à ajouter

Craoco
Invité n'ayant pas de compte PHPfrance

03 juil. 2005, 20:13

Bonjour,
Je crée actuellement mon site pour une association de lans.
J'ai créé une page qui inscrit dans la base de donnée les joueurs (pseudo, nom, prenmo, mail, ville, etc)
Je voudrais que tout cela ressorte dans un tableau mais en ajoutant une ligne à chaque nouveau membre, pour le moment je n'ai réussi que à tout mettre dans la meme ligne

En gros je voudrais que cela ressemble à ca :
http://www.afjr.org/formulaire/les_inscrits.htm

Quelqu'un sait comment faire??
Merci

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

03 juil. 2005, 20:46

si tu sais comment récupérer les infos de tous tes membres, il te suffit de parcourir le jeu de résultats, et de créer une ligne de tableau pour chaque ligne de résultats :
$requete = "requete de récupération des données";
$exec = mysql_query($requete);
echo "<table>";
while ($resultats = mysql_fetch_array($exec)) {
   echo "<tr><td>...</td></tr>";
}
echo "</table>";

Craoco
Invité n'ayant pas de compte PHPfrance

03 juil. 2005, 20:53

OUi je sais mais ce n'est pas encore sous forme de requete je suis parti la dessus :
<?

$mysql_host = 'xxxx'; // entrer votre hote ici
$mysql_user = 'xxx'; // entrer votre login
$mysql_password = 'xxx'; // entrer votre password
$mysql_base = 'xxx'; // entrer le nom de votre base

//----------------------------------------------------------------

$db = mysql_connect($mysql_host,$mysql_user,$mysql_password) or die ("erreur de connexion");

mysql_select_db($mysql_base,$db) or die ("erreur de connexion
base");

$req = mysql_query("SELECT pseudo,prenom,nom,ville,equipe,web,mail from tr_pz2") or die ("erreur requete ".mysql_error()); 

while( $contenu = mysql_fetch_array ($req))
{

print $contenu[pseudo];
print $contenu[prenom];
print $contenu[equipe];

}

mysql_close();
?>
Alors comment faire une requete (je débute en php) ou sinon comment adapter en fonction de ca?? merci

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

03 juil. 2005, 20:59

comment faire une requête ? mais tu en as une dans ton code !
c'est le "SELECT"

alor ssi tu regardes ton code et mon exemple, tu verras qu'ils se ressemblent pas mal

dans ta boucle while, tu vas récupérer toutes tes infos, ligne par ligne
il te suffit juste de les afficher en créeant dynamiquement un tableau HTML
echo "<table>";
echo "<tr><td>Pseudo</td><td>Prénom</td><td>Equipe</td></tr>
while( $contenu = mysql_fetch_array ($req)) {
   echo "<tr>";
   echo "<td>".$contenu[pseudo]."</td>";
   echo "<td>".$contenu[prenom]."</td>";
   echo "<td>".$contenu[equipe]."</td>";
   echo "</tr>";
}
echo "</table>";
et voilà, tes données seront affichées dans un tableau ;)

Craoco
Invité n'ayant pas de compte PHPfrance

03 juil. 2005, 21:03

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource
Ca veut dire quoi ca??

Mammouth du PHP | 19672 Messages

03 juil. 2005, 21:05

tu as probablement une erreur de syntaxe dans ta requête SQL. Mais sans voir le code on ne peut pas te répondre.

Fais afficher la requête elle-même et essaye de l'exécuter directement dans phpMyAdmin.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Craoco
Invité n'ayant pas de compte PHPfrance

03 juil. 2005, 21:22

Voila le script maintenant (complet)
<?
//----------------------------------------------------------------
//
// Page d'affichage des inscrits à la lan
// 
//----------------------------------------------------------------

$mysql_host = 'xxxxxx'; // entrer votre hote ici
$mysql_user = 'xxxxxx'; // entrer votre login
$mysql_password = 'xxxxxx'; // entrer votre password
$mysql_base = 'xxxxxx'; // entrer le nom de votre base

//----------------------------------------------------------------

//me se connecte à la base de donnée
$db = mysql_connect($mysql_host,$mysql_user,$mysql_password) or die ("erreur de connexion");

//sélection de la base de donnée
mysql_select_db($mysql_base,$db) or die ("erreur de connexion
base");

//définition & execution de la requete
$exec = mysql_query("SELECT pseudo,prenom,nom,ville,equipe,web,mail from tr_pz2"); 
echo "<table>"; 
while ($resultats = mysql_fetch_array($exec)) { 
   echo "<tr><td>...</td></tr>"; 
} 
echo "</table>"; 

//je referme la connexion
mysql_close();

//----------------- FIN --------------------------------
?>
Et il m'affiche des petits points
...
...
...
...
Arrivé la je ne comprend plus rien (enfin si mais pas tout ^^)

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

03 juil. 2005, 21:23

bah les petits points moi je viens tout de suite d'où ça vient...

regarde un peu ton code et ne recopie pas bêtement ce qu'on te file ;)

Craoco
Invité n'ayant pas de compte PHPfrance

03 juil. 2005, 21:25

ben wé c'est bien ce que tu m'as donné mais je dois le remplacer par mon tableau non??? (j'ai bien vu que les petit points viennent de ton bout de code ;p)
Si c'est ca j'ai essayé mais ca ne marche pas

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

03 juil. 2005, 21:30

si je ne me trompe pas :

tu sais afficher toutes les données que tu récupères ?
tu sais faire un tableau HTML ?

alors tu sais afficher les données dans un tableau HTML...

je t'ai filé un deuxième exemple de code ça ne t'aide pas ?

Craoco
Invité n'ayant pas de compte PHPfrance

03 juil. 2005, 22:22

Pourriez vous me dire ou je dois mettre mon tableau???
Je ramme un max car ca ne marche pas :(

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

03 juil. 2005, 22:31

bon, je te redonne mon exemple :
echo "<table>";
echo "<tr><td>Pseudo</td><td>Prénom</td><td>Equipe</td></tr>";
while( $contenu = mysql_fetch_array ($req)) {
   echo "<tr>";
   echo "<td>".$contenu[pseudo]."</td>";
   echo "<td>".$contenu[prenom]."</td>";
   echo "<td>".$contenu[equipe]."</td>";
   echo "</tr>";
}
echo "</table>";
là franchement je ne vois pas ce qui te gêne pour intégrer ça dans ton code :?
si ça ne t'aide pas je ne sais pas quoi faire de plus

il faut que construise le code HTML du tableau dynamiquement c'est tout

craoco
Invité n'ayant pas de compte PHPfrance

03 juil. 2005, 22:33

il faut que construise le code HTML du tableau dynamiquement c'est tout
je sais faire un tableau mais dynamique c'est quoi et comment??

Modérateur PHPfrance
Modérateur PHPfrance | 6373 Messages

03 juil. 2005, 22:43

il faut que construise le code HTML du tableau dynamiquement c'est tout
je sais faire un tableau mais dynamique c'est quoi et comment??
:shock:

c'est bizarre que tu sache te connecter à une base, faire des formulaires, insérer des données avec PHP et que tu ne comprennes pas ce que veut dire "construire un tableau dynamiquement"

"dynamiquement", ça veut dire construit par PHP, suivant les données que tu récupères, par opposition à un tableau "statique", dont le code HTML est écrit "en dur" et ne changera jamais

tu récupères plusieurs lignes de données comme ça on est d'accord

Code : Tout sélectionner

pseudo | prenom | équipe
et toi tu veux les afficher dans un tableau HTML, comme ça

Code : Tout sélectionner

<table> <tr> <td>pseudo</td><td>prenom</td><td>équipe</td> </tr> <tr> <td>pseudo</td><td>prenom</td><td>équipe</td> </tr> <tr> <td>pseudo</td><td>prenom</td><td>équipe</td> </tr> </table>
donc, une ligne "<tr>....</tr>" pour chaque ligne de données

tu as une boucle while qui parcourt tous tes résultats ligne par ligne
donc au lieu de les afficher brutes dans ta page, tu les affiches avec les balises HTML pour créer à chaque fois une ligne de tableau

je ne vois pas comment faire plus simple et plus clair

de plus, je t'ai filé deux fois un bout de code qui fait exactement ça, et je me demande si tu l'as vu...

craoco
Invité n'ayant pas de compte PHPfrance

03 juil. 2005, 22:48

Okay c'est bon ca marche...

EL truc en fait (désolé de t'avoir pris la tête) c'est que j'essayais de comprendre .... J'ai suivi des tutos sur le net pour tout faire et j'a tout compris mais ca je savais pas faire

Merci beaucoup à ceux qui ont répondu et qui font vivre ce forum (je reviendrais :wink: vite en plus ^^)