Faire un classement dans un tableau

Loke
Invité n'ayant pas de compte PHPfrance

08 juil. 2005, 13:27

Bonjour j'ai une liste de participants pour un rassemblement.
Des infos sont demandées aux participants (nom, prenom, team...)
Je voudrais savoir comment faire pour que ceux ci soient classés par team.
Voici mon code de l'insertion des données :
echo "<table>"; 
echo "<tr><td width=\"90\"><strong>Pseudo</strong></td><td width=\"90\"><strong>Prenom</strong></td><td width=\"90\"><strong>Equipe</strong></td><td width=\"90\"><strong>Tournoi CS</strong></td><td width=\"90\"><strong>Tournoi W3</strong></td><td width=\"90\"><strong>Tournoi UT</strong></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>"; 

if($contenu["counter"] == 'Y') 
{    
print "<td><img src='http://scipately.free.fr/images/icons/Y.gif'</td>"; 
} 
else{ 
print "<td><img src='http://scipately.free.fr/images/icons/N.gif'</td>"; 
} 

if($contenu["warcraft"] == 'Y') 
{    
print "<td><img src='http://scipately.free.fr/images/icons/Y.gif'</td>"; 
} 
else{ 
print "<td><img src='http://scipately.free.fr/images/icons/N.gif'</td>"; 
} 

if($contenu["unreal"] == 'Y') 
{    
print "<td><img src='http://scipately.free.fr/images/icons/Y.gif'</td>"; 
} 
else{ 
print "<td><img src='http://scipately.free.fr/images/icons/N.gif'</td>"; 
}  
   
   echo "</tr>"; 
} 
echo "</table>";  

//je referme la connexion
mysql_close();

//----------------- FIN --------------------------------
?>          

Eléphant du PHP | 450 Messages

08 juil. 2005, 13:30

elle est ou ta requete ?

tu met order bye team dans la requete est sa devrait etre bon enfin je pense
Alone in the dark , I smile :D

Loke
Invité n'ayant pas de compte PHPfrance

08 juil. 2005, 13:31

Excuse la voila :
//définition & execution de la requete
$req = mysql_query("SELECT pseudo,prenom,nom,ville,equipe,web,mail,counter,warcraft,unreal from tr_pz2");
Je l'intègre comment dedans??? je sais pas faire désolé :) je ne demande qu'à savoir lol

Mammouth du PHP | 1353 Messages

08 juil. 2005, 13:32

Code : Tout sélectionner

$req = mysql_query("SELECT pseudo,prenom,nom,ville,equipe,web,mail,counter,warcraft,unreal from tr_pz2 ORDER by equipe");
Si jamais la il y a tous les champs de la base tu peux simplement faire :

Code : Tout sélectionner

$req = mysql_query("SELECT * from tr_pz2 ORDER by equipe");
.. c plus joli non ? :wink:

par contre c'est étonnant que tu fasses un my_fetch_array et que après tu utilises le nom des variables le code fonctionne bien à part l'ordre ?

Eléphant du PHP | 450 Messages

08 juil. 2005, 13:34

euh je pense a sa :

//définition & execution de la requete
$req = mysql_query("SELECT pseudo,prenom,nom,ville,equipe,web,mail,counter,warcraft,unreal from tr_pz2 ORDER BY team");
ps je serait toi je decomposerai la requete en deux c'est plus comprehensible a mon avis :wink:
Alone in the dark , I smile :D

Loke
Invité n'ayant pas de compte PHPfrance

08 juil. 2005, 13:34

Vi tout marche bien...
Merci beaucoup ca marche...

Eléphant du PHP | 450 Messages

08 juil. 2005, 13:36

Rrr c'etait a moi de repondre guilt92 :)
lol

bon bah deu reponse c'est toujours mieu qu'une

(c'est exactement ske vous avez dit dans un poste ou vous m'aidiez a votre tour ;) lol )
Alone in the dark , I smile :D

Mammouth du PHP | 1353 Messages

08 juil. 2005, 13:38

lol désolé mais j'étais en train de répondre et c'est après avoir validé que j ai vu ta réponse...

Sans rancune !!! :wink:

Mammouth du PHP | 19672 Messages

08 juil. 2005, 23:19

Accessoirement, tu pourrais avantageusement éclaircir ton code en séparant le PHP du HTML, tu verrais que tes balises images ne sont pas fermées par exemple:
<table>
  <tr>
    <td width="90"><strong>Pseudo</strong></td>
    <td width="90"><strong>Prenom</strong></td>
    <td width="90"><strong>Equipe</strong></td>
    <td width="90"><strong>Tournoi CS</strong></td>
    <td width="90"><strong>Tournoi W3</strong></td>
    <td width="90"><strong>Tournoi UT</strong></td>
  </tr>
<?php
while( $contenu = mysql_fetch_array ($req))
{
    ?>
  <tr>
    <td><?php echo($contenu[pseudo]); ?></td>
    <td><?php echo($contenu[prenom]); ?></td>
    <td><?php echo($contenu[equipe]); ?></td>
<?
    if($contenu["counter"] == 'Y')
    {
?>
    <td><img src="http://scipately.free.fr/images/icons/Y.gif"></td>
<?php
    }
    else
    {
?>
    <td><img src="http://scipately.free.fr/images/icons/N.gif"></td>
<?php
    }

    if($contenu["warcraft"] == 'Y')
    {
?>
    <td><img src="http://scipately.free.fr/images/icons/Y.gif"></td>
<?php
    }
    else
    {
?>
    <td><img src="http://scipately.free.fr/images/icons/N.gif"></td>
<?php
    }

    if($contenu["unreal"] == 'Y')
    {
?>
    <td><img src="http://scipately.free.fr/images/icons/Y.gif"></td>
<?php
    }
    else
    {
?>
    <td><img src="http://scipately.free.fr/images/icons/N.gif"></td>
<?php
    }
    ?>
  </tr>
    <?php
}
?>
</table>
<?php
//je referme la connexion
mysql_close();

//----------------- FIN --------------------------------
?>
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

ViPHP
pjl
ViPHP | 2119 Messages

09 juil. 2005, 10:57

Code : Tout sélectionner

$req = mysql_query("SELECT pseudo,prenom,nom,ville,equipe,web,mail,counter,warcraft,unreal from tr_pz2 ORDER by equipe");
Si jamais la il y a tous les champs de la base tu peux simplement faire :

Code : Tout sélectionner

$req = mysql_query("SELECT * from tr_pz2 ORDER by equipe");
.. c plus joli non ? :wink:

par contre c'est étonnant que tu fasses un my_fetch_array et que après tu utilises le nom des variables le code fonctionne bien à part l'ordre ?
SELECT * plus joli !!!!!!!!!!!!!!!!!!!
C'est surtout une solution de faignasse.

Mammouth du PHP | 19672 Messages

09 juil. 2005, 11:04

SELECT * plus joli !!!!!!!!!!!!!!!!!!!
C'est surtout une solution de faignasse.
Je dirais également que c'est une solution qui n'a rien de pratique.

Lorsque j'écris mon code pour placer les différents éléments récupérés par exemple avec mysql_fetch_array(), je trouve personnellement infiniment plus pratique de lire directement dans la requête quelques lignes plus haut le nom des champs appelés plutôt que de basculer vers phpMyAdmin ou n'importe quel utilitaire de gestion de base de données pour vérifier le nom exact du champ que je veux utiliser. Le SELECT * est pratique, je n'en disconviens pas... à très courte terme. À l'usage, c'est une perte de temps.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe: