Forum-webmaster
Technique - programmation => PHP / MySQL => Message commencé par: Toutankharton le le 22-11-2003 a 11:38:43

Titre: Les tableaux
Posté par: Toutankharton le le 22-11-2003 a 11:38:43

Je veut faire un tableau qui fait en fait une liste de noms. Pour vous donenr une idée : http://www.toutankharton.com/dieux_liste.php (http://www.toutankharton.com/dieux_liste.php) mais là c'et du html ; En html, c'est facile, mais le probleme c'est que si je veut en rajouter un je doit modifier toute la ligne pour qu'il soit à sa place (ordre alphabetique)
L'utilisation de php peut m'aider je pense, mais je suis qu'un debut...

Voila ceque j'ai

Code:
<?PHP
$dieu["1"] = "Beauvais";
$dieu["2"] = "Versailles";
$dieu["3"] = "Créteil";
$dieu["4"] = "Beauvait";
sort($dieu);
echo "<html>";
echo "<head>";
echo "<title>Liste des dieux égyptiens</title>";
echo "</head>";
echo "<body>";
echo "<table border='1' bgcolor='' width='100%'>";
foreach($dieu as $valeur => $nom)
{ echo "<tr><td>$nom</td></tr>";
}
echo "</table>";
echo "</body>";
echo "</html>";
?>


Là cela ne me donne qu'une colonne et moi je vudrai qu'il y ait 26 colonnes (une pour chaque lettre oui

Quelqu'un peut m'aider?

Titre: Re:Les tableaux
Posté par: ackilem le le 22-11-2003 a 12:02:29

Salut,
moi je pense qu'il faudrait une base de données, avec deux tables, une des lettres de A à Z et une autres avec lis infos.

Tu affiches le tableau avec les lettres de A à z et tu insères les infos en fonction des lettres, je vais essayer de t'envoyer un essai.

Titre: Re:Les tableaux
Posté par: ackilem le le 22-11-2003 a 12:05:05

tu as meme pas besoin de faire deux tables dans la base. je t'envoie le code de ce que j'ai fait.

Titre: Re:Les tableaux
Posté par: Toutankharton le le 22-11-2003 a 12:06:47

ça serait cool !

mais le prob c'est que c'est une lsite de dieux... et là il en a 400 et le but c'est d'arriver à 5000... est ce que mysql supporte ça ?

Titre: Re:Les tableaux
Posté par: ackilem le le 22-11-2003 a 12:11:49

je pense que mysql supporte ça mais là je viens de regarder et c'est pas si simple que ça.

Titre: Re:Les tableaux
Posté par: Toutankharton le le 22-11-2003 a 12:17:47

arf :)

Titre: Re:Les tableaux
Posté par: FireLink le le 22-11-2003 a 12:21:25

Bah, explique ton problème plus précisément et tu auras des chances de trouver...

Titre: Re:Les tableaux
Posté par: erwinol le le 22-11-2003 a 13:22:23

Citation de: Toutankharton le le 22-11-2003 a 12:06:47
mais le prob c'est que c'est une lsite de dieux... et là il en a 400 et le but c'est d'arriver à 5000... est ce que mysql supporte ça ?


C'est un jeu d'enfant pour mySQL ... il supportera très bien ça ;)

L'idéal est en effet de faire une table comme celle-çi











[/table]

Et pour l'affichage tu executeras simplement la requête suivante :


Code:
idnamecomments
1RaDieu du Soleil
2OsirisDieu de jesaispasquoi
SELECT name, comments
FROM table
ORDER BY name ASC



Code:
$row = mysql_fetch_array($result);
echo $row['name'] . "\t comments : " . $row['comments'] . "\n";
while(mysql_fetch_array($result)){
echo $row['name'] . "\t comments : " . $row['comments'] . "\n";
}


Et comme ça ils seront classés par ordre alphabétique.

Si tu veux vraiment les placer ailleurs en fonction de la première lettre tu as le choix de faire 26 requetes ... ce que je te conseille pas trop ... la première étant celle-çi :

Code:
SELECT name, comments
FROM table
WHERE name LIKE 'A%'
ORDER BY name ASC


Oubien de mettre tout dans un tableau PHP (array) au fur et à mesure que tu prends les lignes de ta requete et ça rejoint alors ton idée de départ ... tu testes la première lettre et tu regardes si elle est identique à la première lettre que tu avais sauvegardé pour le Dieu précédent tu continues, sinon tu passes à la colonne suivante.

Oubien tu reprends ma première solution et tu fais le test dans la boucle while(), c'est ce qui me semble le plus approprié !

Titre: Re:Les tableaux
Posté par: Toutankharton le le 22-11-2003 a 13:40:17

Oula ! je suis debutant donc faut pas aller trop vite lol !

Moi je ferais un truc du genre dans mysql :

ID A B C D...
1 Aat Baâl . . .
2 Ati . . . .
3


Et apres un peut comme t'as dit, mais de facon a le mettre dans un tableau. Pour être precis, je veut (j'aimerais bien ::)) faire exactement comme ce que j'ai deja (voir lien) mais de facon dynamique pour n'avoir par exemple qu'a rajouter au moyen d'un formulaire un nouveau dieu


Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.