begin process at 2012 05 28 13:18:56
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

Débutants

 > 

Afficher une liste.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Afficher une liste.

jeudi 30 septembre 2004 à 19:22:30 | Afficher une liste.

Kaeru

Je savais pas quoi mettre comme titre pour expliquer mon problème.

J'ai une table nommée Perso
Dans cette table se trouve plusieurs colones.
La colone qui m'interesse est la colone Race.

Le principe c'est que lorsque quelqu'un s'inscrit il choisi sa race.

Et ma question est de savoir comment fait un block ou il est écrit:
Race1 : tant
Race2 : tant
Etc..

J'ai ce code mais ça ne fonctionne pas.
Quelqu'un pourait m'aider svp? Merci

<?
$sql_serveur = 'localhost';
$sql_user = 'user';
$sql_password = 'pass';
$db2 = 'bdd';
$sql_table = 'PERSO';

$db = mysql_connect($sql_serveur, $sql_user, $sql_password) or die
('Erreur : '.mysql_error() );
mysql_select_db($db2) or die ('Erreur :'.mysql_error());
$query = "SELECT Race FROM Perso GROUP BY Race";
$result = mysql_query($query, $db) or die ("Requête invalide");
$count = mysql_num_rows($result);

mysql_close($db);

echo $count." Classement des races.";
?>
vendredi 1 octobre 2004 à 09:40:22 | Re : Afficher une liste.

windu

Membre Club
essaie plutot:

$query = "SELECT Race FROM Perso ORDER BY Race";

Tu peux meme enlever le GROUP BY Race s'il n'existe pas 2 races identiques...
Vérifie aussi l'orthographe, et la casse: respecte les majuscules/minuscules quoi....
Que la Force soit avec toi, Jeune Padawan!!!
vendredi 1 octobre 2004 à 12:11:25 | Re : Afficher une liste.

Kaeru

Heu voila où j'en suis. Ca fonctione mais le code est gros.
Quelqu'un sait comment je peut réduire le code?

<?
$sql_serveur = 'localhost';
$sql_user = 'user';
$sql_password = 'pass';
$db2 = 'bdd';
$sql_table = 'TLT_Perso';

$db = mysql_connect($sql_serveur, $sql_user, $sql_password) or die
('Erreur : '.mysql_error() );
mysql_select_db($db2) or die ('Erreur :'.mysql_error());
$query1 = "SELECT Race FROM TLT_Perso WHERE Race='Humain'";
$query2 = "SELECT Race FROM TLT_Perso WHERE Race='Elfe'";
$query3 = "SELECT Race FROM TLT_Perso WHERE Race='Nain'";
$query4 = "SELECT Race FROM TLT_Perso WHERE Race='Gobelin'";
$result1 = mysql_query($query1, $db) or die ("Requête invalide");
$result2 = mysql_query($query2, $db) or die ("Requête invalide");
$result3 = mysql_query($query3, $db) or die ("Requête invalide");
$result4 = mysql_query($query4, $db) or die ("Requête invalide");
$count1 = mysql_num_rows($result1);
$count2 = mysql_num_rows($result2);
$count3 = mysql_num_rows($result3);
$count4 = mysql_num_rows($result4);

mysql_close($db);

echo "Nombre d'Humains: $count1<BR>Nombre d'Elfes: $count2<BR>Nombre de Nains: $count3<BR>Nombre de Gobelins: $count4";

?>
vendredi 1 octobre 2004 à 17:06:33 | Re : Afficher une liste.

windu

Membre Club
oui, tu peux remplacer toutes tes requetes ($queryX...) par une seule requete, eyt tu n'exécute qu'une seule fois le code que tu répéts X fois (car si des nouvelles races apparaissent, tu devras réécrire ton code...):

$query= "SELECT Race FROM TLT_Perso ORDER BY Race";
$result=mysql_query($query) or die ("Requête invalide");
while($data=mysql_fetch_array($result))
{
switch($data['Race'])
{
case "humains":
$tabRace['humain']++;
break;

case "elfes":
$tabRace['humain']++;
break;

case "Nains":
$tabRace['Nains']++;
break;

case "Gobelins":
$tabRace['Gobelins']++;
break;
}
}

Ensuite tu peux afficher ton tableau car il contient 1 case par race, et le nombre de perso de cette race...
Avantage de cette méthode: tu n'as qu'une requête SQL à faire au lieu d'une par Race

Que la Force soit avec toi, Jeune Padawan!!!
vendredi 1 octobre 2004 à 19:47:47 | Re : Afficher une liste.

Kaeru

D'accord. J'ai modifié le code mais il n'affiche pas le résultat.
J'ai peut être pas mis la commande pour les afficher.
Il faut que je fasse un echo?
vendredi 1 octobre 2004 à 19:53:25 | Re : Afficher une liste.

AkeluX

Membre Club
$query = "SELECT Race, count( Race ) AS TotRace FROM TLT_Perso GROUP BY Race";
while($data=mysql_fetch_array(mysql_query($query)))
{
echo "Nombre de " . $data["Race"] . " : " . $data["TotRace"];
}

Avec cette requête, tu auras dans Race le nom de la race et dans TotRace le total de personne de la race ...

AkeluX
vendredi 1 octobre 2004 à 20:27:50 | Re : Afficher une liste.

Kaeru

Non plus. Mais je commence à me demander si multimania n'a pas rien a voir dans tout ça. C'est possible?
vendredi 1 octobre 2004 à 20:49:31 | Re : Afficher une liste.

windu

Membre Club
j'en doute... a partir du moment ou tu as une Base de données et que tu peux faire des requetes dessus... je ne vois pas en quoi il peut te brider sur le type de requete que tu effectue
Que la Force soit avec toi, Jeune Padawan!!!
vendredi 1 octobre 2004 à 20:57:06 | Re : Afficher une liste.

Kaeru

Ok. Bah je sais pas trop pourquoi ça marche pas. Surement pour la simple raison que j'y connais rien :)
Merci en tout cas du temps passé à répondre.
vendredi 1 octobre 2004 à 20:57:56 | Re : Afficher une liste.

AkeluX

Membre Club
Réponse acceptée !
Je viens de tester mon code et il marche très bien chez moi en tout cas ....


<?
mysql_connect("localhost","test","test");
mysql_select_db("test");

$query = "SELECT Race, count( Race ) AS TotRace FROM TLT_Perso GROUP BY Race";
$result = mysql_query($query);
while($data=mysql_fetch_array($result))
{
echo "Nombre de " . $data["Race"] . " : " . $data["TotRace"] . "<br>";
}
?>


Il faut faire attention à quelques détails comme la sensibilité de la case des systèmes Linux pour les champs et les noms de table ... J ai pas d hébergement chez multimania donc je peux pas vraiment plus t aider ... dsl

AkeluX

1 2 3

Cette discussion est classée dans : table, afficher, liste, colone, race


Répondre à ce message

Sujets en rapport avec ce message

Liste déroulante MAJ???? [ par rich25200 ] Bonjour,J'ai une liste déroulante alimenter par une table prenons par exemple la table famille ou dans ma liste il y a tout les noms de famille..Je ve question sur les formulaires et bd de debutant [ par herveguedj ] Voila je debute en php et j'ai dans un formulaire membre une table membre et une table region le formulaire contient une zone liste qui liste toutes l Comment m'y prendre? [ par zzzzzz ] Salut.En fait jai une table qui contient plusieurs champs. J'aimerai faire une sorte de "confimation" c'est pour un gereur d'article. Qq poste un arti afficher la valeur d'une table dans un menu select [ par inconnue ] Bonjour, j'affiche un menu select dynamiquement constitué par des valeurs dans une table,dans ma page de modification des données, je souhaiterai donc Afficher une ligne d'une table mysql [ par Alferox ] Bonjours,bon bin une question de base toute con.Je voudrais afficher uniquement la ligne qui port l'id 2 d'une table. Il n'y a pas plus simple que de double liste deroulante + BDD [ par pixelver ] Bonjour, je suis en train de faire une double liste deroulante dont les donnees sont dans une base de donnees. J'ai une liste de cours:Id tablename co Problème pour lire et afficher sur un page les données de ma table... [ par rem78 ] Bonjour,J'ai un problème pour arriver à récupérer et afficher les données depuis une table de ma base, jai fait le script suivant :1 2 include("../Liv afficher résultat en liste [ par Bowlest ] Bonjour,Je voudrais afficher le résultat sous forme de liste, car j'obtiens un résultat vertical et collé.Merci d'avance :)$req="SELECT idcommande FRO Liste déroulante [ par djamine ] Bonjour ,J'ai 2 table PAYS ( code_pays , pays ) , et Ville (code_pays , ville )j'affiche dans une liste ( combo ) toute les pays depuis le champspays afficher resultat selon choix liste deroulante (nooob) [ par super_noob ] salut à tous,ma question risque de paraitre debile à beaucoup de programmeurs ici present mais bon, je la pose quand meme :j'ai une liste deroulante a


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,796 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales