PhP / SQL

Résolu/Fermé
Mattht Messages postés 4 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 18 juillet 2008 - 18 juil. 2008 à 17:26
Mattht Messages postés 4 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 18 juillet 2008 - 18 juil. 2008 à 19:34
Bonjour, à tous/toues!

Je cherche a extraire des informations dans ma base de données sur mon site... Jusqu'à là
aucune probleme!

Voici le code:

<-------------------------------------------------------------------------------------------->

<?php

include('identifiant.php');
$cnx= mysql_connect($host,$utilisateur,$mdp);
$idbase= mysql_select_db('characters');
$requete="SELECT name AS 'Personnages', race AS 'Race', class AS 'Classe' FROM characters WHERE online = 0 ORDER BY name";

$result=mysql_query($requete,$cnx);
if(!$result)
{
echo "Lecture impossible";
}
else
{
$nbcol=mysql_num_fields($result);
$nbart=mysql_num_rows($result);

echo "<h3>Il y a $nbart personnages online:</h3>";

//Affichage titres
echo "<center><fieldset id=staff><legend>List</legend><table width=200px><tr>";
for($i=0;$i<$nbcol;$i++)
{
echo "<th class=th>", mysql_field_name($result,$i),"</th>";
}
echo "</tr>";

//Affichage valeur
for($i=0;$i<$nbart;$i++)
{
// $donnees = mysql_fetch_array($result);
$ligne=mysql_fetch_row($result);
echo "<tr>";
for($j=0;$j<$nbcol;$j++)
{

echo "<td><center>",$ligne[$j],"</center></td>";
}
echo "</tr>";
}
echo "</table></center>";
mysql_free_result($result);
}
?>
</fieldset>

<----------------------------------------------------------------------------------------------------------->

Voici mon probleme: Les valeurs 'Race' et 'classe' sont stocker sous un forme numérique.
(1 = une race tandis que 2 une autre... par exemple)
Comment faire en sorte qu'au lieu de me donner ces nombres... Il me ressorte les vrais race et
classe des personnage?!

J'ai penser au $donnees = mysql_fetch_array($requete);
$race = $donnees['race'];
Mais je n'arrive pas a le faire marcher correctement :'(


Quelqu'un aurait la réponse?! Merci d'avance!
A voir également:

6 réponses

croy Messages postés 453 Date d'inscription samedi 19 janvier 2008 Statut Membre Dernière intervention 23 octobre 2012 114
18 juil. 2008 à 17:41
Il faut préciser ta question : qu'est-ce-que la "vraie race" ? est-ce un libellé ? dans ce cas où sont stockés ces libellé ?
0
Mattht Messages postés 4 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 18 juillet 2008
18 juil. 2008 à 17:54
En gros je voudrai que mon script PhP dise: If Race=1 display ElF

Pour le moment ca donne une list de tout les personnage enligne sur le serveur dans un tableau du style:

Personnages                 Race                   Classe
  Zorkka                      5                        2  
  "Un autre nom"             9                         6
etc...


Le but serai donc de définir moi meme ces numero pour que les 5 correspondent a un Orc par exemple et donc donner:


Personnages                  Race                      Classe
  Zorkka                    Orc                       Chasseur 
  "Un autre nom"             Elf                       Guerrier
etc..
0
Utilisateur anonyme
18 juil. 2008 à 18:59
Salut,
je comprends pas, pourquoi tu les stockes sous forme de nombre si tu veux qu'ils ressortent sous forme de texte? A ce compte là enregistre directement dans ta base de données une chaîne de caractères au lieu d'un nombre.
0
Mattht Messages postés 4 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 18 juillet 2008
18 juil. 2008 à 19:08
Le probleme est que le serveur du jeu marche comme ça... Je n'ai malheureusement pas (et de loin) la compétence a le modifier...

Je dois donc me tourner vers le PhP pour essayé de modifier les valeurs quand il sont sorti de la base de données.
0

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

Posez votre question
Utilisateur anonyme
18 juil. 2008 à 19:21
Ok, donc tu n'as qu'à te tourner vers un switch ou des if pour afficher la race correcte et la classe correcte.
while ($donnees = mysql_fetch_array($result) )
{
        switch($donnees['race']){
            case 1:
            echo "Mort-Vivant";
            break;
            case 2:
            echo "Tauren";
            break;
            case 3:
            echo "Orc";
            break;
       }
       switch($donnees['classe']){
            case 1:
            echo "Mage";
            break;
            case 2:
            echo "Chasseur";
            break;
            case 3:
            echo "Démoniste";
            break;
       }
}

Voilà le code, à toi de faire la mise en page et de changer les echo en fonction de ta base de données :)
0
Mattht Messages postés 4 Date d'inscription vendredi 18 juillet 2008 Statut Membre Dernière intervention 18 juillet 2008
18 juil. 2008 à 19:34
Merci beaucoup! Je ne connaissait pas l'existence du switch :)
0