[PHP] Transformer requete mysql en tableau
colas31
Messages postés
143
Statut
Membre
-
amawalpe Messages postés 1 Statut Membre -
amawalpe Messages postés 1 Statut Membre -
Bonjour,
J'ai un soucis et je voudrais transformer une requete mySQL en tableau:
$select = "SELECT * FROM loisirs";
$result = mysql_query($select);
Comment obtenir de $result un tableau?
Il existe la fonction mysql_fetch_array($result), mais elle ne retourne qu'une ligne!
Comment puis je faire??
Merci
J'ai un soucis et je voudrais transformer une requete mySQL en tableau:
$select = "SELECT * FROM loisirs";
$result = mysql_query($select);
Comment obtenir de $result un tableau?
Il existe la fonction mysql_fetch_array($result), mais elle ne retourne qu'une ligne!
Comment puis je faire??
Merci
A voir également:
- Array mysql php
- Easy php - Télécharger - Divers Web & Internet
- Mysql community download - Télécharger - Bases de données
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php ✓ - Forum PHP
- Retour à la ligne php ✓ - Forum PHP
11 réponses
Je pense qu'il y a une confusion sur le nombre de dimension du tableau dès le départ.
Je crois qu'un array issu de fetcharray éclate les données d'UNE SEULE ligne sur un tableau d'une dimension :
Ligne[champ1], Ligne[champ2], Ligne[champ3].
En revanche, le demande était peut-être de monter un tableau à 2 dimensions type :
Ligne[0,champ1], Ligne[0,champ2], Ligne[0,champ3]
Ligne[1,champ1], Ligne[1,champ2], Ligne[1,champ3]
Ligne[3,champ1], Ligne[3,champ2], Ligne[3,champ3]
Je sais pas si c'est possible...
Je crois qu'un array issu de fetcharray éclate les données d'UNE SEULE ligne sur un tableau d'une dimension :
Ligne[champ1], Ligne[champ2], Ligne[champ3].
En revanche, le demande était peut-être de monter un tableau à 2 dimensions type :
Ligne[0,champ1], Ligne[0,champ2], Ligne[0,champ3]
Ligne[1,champ1], Ligne[1,champ2], Ligne[1,champ3]
Ligne[3,champ1], Ligne[3,champ2], Ligne[3,champ3]
Je sais pas si c'est possible...
mysql_fetch_array retourne déjà le résultat sous forme de tableau.
Je comprends pas vraiment la question ..
Je comprends pas vraiment la question ..
C'est un tableau général.
Regarde ce que tu retournes le code suivant :
Regarde ce que tu retournes le code suivant :
<pre> <?php echo mysql_fetch_array($result) ?> </pre>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
J'ai du mal à comprendre la finalité.
Tu veux en faire quoi exactement de cette variable finale qui ne contient qu'un tableau HTML avec tes données ?
Tu veux en faire quoi exactement de cette variable finale qui ne contient qu'un tableau HTML avec tes données ?
Quand je parlais d'un tableau HTML, je parlais d'un <table></table>.
Pourquoi ne pas afficher directement les données dans un <table></table> alimenté par un while ?
Tu feras une seule boucle au lieu de deux pour afficher tes données. (Etant donné que tu dois quand même faire un while si tu veux contenir le résultat de mysql_fetch_array pour les mettre dans un array).
Pourquoi ne pas afficher directement les données dans un <table></table> alimenté par un while ?
Tu feras une seule boucle au lieu de deux pour afficher tes données. (Etant donné que tu dois quand même faire un while si tu veux contenir le résultat de mysql_fetch_array pour les mettre dans un array).
$tablo
$index = 0;
while ($row = mysql_fetch_array($result)) {
$tablo[$index] = $row;
$index += 1;
}
//et apres tu manipule ton $tablo
Note bien : la fonction mysql_fetch_array($result) fonctionne comme un curseur qui renvoit la prochaine ligne uniquement de ton resultat mysql sous forme d'un tableau.
par exemple si tu as
1---toto----rue de la paix
2---tata----rue de la guerre
3---titi-----rue de la boule
le 1er appel à mysql_fetch_array($result) te renverra un tableau de taille 3 comme ceci
{1;toto;rue de la paix} par exemple $row[1] = toto
c'est pourquoi tu es obligé de passer par un while pour récuperer toutes les lignes.
en regle général le manuel php.net est trés bien fait : et il y a des exemples !!!!
https://www.php.net/manual/fr/function.mysql-fetch-array.php
$index = 0;
while ($row = mysql_fetch_array($result)) {
$tablo[$index] = $row;
$index += 1;
}
//et apres tu manipule ton $tablo
Note bien : la fonction mysql_fetch_array($result) fonctionne comme un curseur qui renvoit la prochaine ligne uniquement de ton resultat mysql sous forme d'un tableau.
par exemple si tu as
1---toto----rue de la paix
2---tata----rue de la guerre
3---titi-----rue de la boule
le 1er appel à mysql_fetch_array($result) te renverra un tableau de taille 3 comme ceci
{1;toto;rue de la paix} par exemple $row[1] = toto
c'est pourquoi tu es obligé de passer par un while pour récuperer toutes les lignes.
en regle général le manuel php.net est trés bien fait : et il y a des exemples !!!!
https://www.php.net/manual/fr/function.mysql-fetch-array.php
Je suis bête ...
Plutot que de faire
Essaie avec
Et dis moi si le tableau s'affiche mieux stp. (Ca sera un tableau brut)
Plutot que de faire
<?php echo "<pre>"; echo mysql_fetch_array($result); echo "</pre>"; ?>
Essaie avec
<php echo "<pre>"; print_r(mysql_fetch_array($result)); echo "</pre>"; ?>
Et dis moi si le tableau s'affiche mieux stp. (Ca sera un tableau brut)
Voila le resultat de ta requete, mais je pense que je vais suivre l'idée thomas.
Array
(
[0] => 1
[NumL] => 1
[1] => Ville
[Lieu] => Ville
[2] => Danse
[Act] => Danse
[3] => Soir
[Hor] => Soir
)
Array
(
[0] => 1
[NumL] => 1
[1] => Ville
[Lieu] => Ville
[2] => Danse
[Act] => Danse
[3] => Soir
[Hor] => Soir
)
remarque au passage,
Array
(
[0] => 1
[NumL] => 1
[1] => Ville
[Lieu] => Ville
[2] => Danse
[Act] => Danse
[3] => Soir
[Hor] => Soir
)
comme tu peux le voir ici, tu as une ligne de ton résultat (1, ville, danse, soir)
ils ont pensé à tout chez php et mysql puisque chaque case du tableau est accessible soit en utilisant un index soit en utilisant le nom de la colonne.
par exemple, ici, si tu fais $tonarray[1] ca renverra la même chose que $tonarray["Lieu"], c'est à dire "Ville".
a+
Array
(
[0] => 1
[NumL] => 1
[1] => Ville
[Lieu] => Ville
[2] => Danse
[Act] => Danse
[3] => Soir
[Hor] => Soir
)
comme tu peux le voir ici, tu as une ligne de ton résultat (1, ville, danse, soir)
ils ont pensé à tout chez php et mysql puisque chaque case du tableau est accessible soit en utilisant un index soit en utilisant le nom de la colonne.
par exemple, ici, si tu fais $tonarray[1] ca renverra la même chose que $tonarray["Lieu"], c'est à dire "Ville".
a+