PhP / SQL
Résolu
Mattht
Messages postés
4
Statut
Membre
-
Mattht Messages postés 4 Statut Membre -
Mattht Messages postés 4 Statut Membre -
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!
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!
Configuration: Windows Vista Firefox 3.0
6 réponses
-
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é ?
-
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..
-
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. -
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. -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
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 :) -
Merci beaucoup! Je ne connaissait pas l'existence du switch :)