Créer un tableau à partir d'une requête MySQL

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Créer un tableau à partir d'une requête MySQL

par cyberlp » 22 mai 2009, 09:53

Tu as raison, mais en fait le problème venait d'un accès à la base de données qu'on m'a signalé par ailleurs.

Merci en tout cas pour votre aide.

par Calimero » 21 mai 2009, 20:14

Bonjour,
Je ne comprends absolument pas pourquoi il ne veut pas le prendre en considération...
Ce genre de phrase ne nous donne aucun indice permettant de t'aider. Sois précis et décris-nous ce que tu observes.

Traditionnellement, quand un code comme le tien ne fonctionne pas comme attendu, soit on commente des lignes de code jusqu'à trouver laquelle empêchait le code de fonctionner, soit on ajoute des echo à toutes les lignes pour en déduire par où on passe (et par élimination, par où on ne passe pas).

par cyberlp » 21 mai 2009, 19:29

Alors, ça donne un tableau du genre :

Array
(
[0] => Test
[1] => TesT1
[2] => TesT2

)


ce que donne très exactement le tableau classique non tiré de MySQL.

Je ne comprends absolument pas pourquoi il ne veut pas le prendre en considération...

par AB » 21 mai 2009, 19:15

Pour bien visualiser le contenu d'un tableau (ici $p) tu peux faire
echo '<pre>';
print_r($p);
echo '</pre>';

par cyberlp » 21 mai 2009, 17:43

Merci, par contre je ne comprends pas pourquoi :
$query = mysql_query("SELECT titre FROM livres") or die(mysql_error());
$p=array();
while ($result = mysql_fetch_assoc($query)) $p[] = $result['titre'];

$q = $_POST['ID_livre']; $i=0;
if ($q != "") {
  echo '<ul>';
  foreach($p as $prn) {
    if (substr(strtolower($prn),0,strlen($q)) == strtolower(stripslashes($q))) {
      echo '<li><a href="#" onclick="return false">'.htmlentities($prn).'</a></li>';
      if (++$i >= 10) die('<li>...</li></ul>');
    }
  }
  echo '</ul>';
}
ne marche pas

alors que si j'appelle un tableau directement et que je remplace les 3 premières lignes par disons :
$p = array("Notre-Dame De Paris", "Roméo et Juliette");
ça marche

Ca vient de la façon dont l'array est formaté ?

par AB » 21 mai 2009, 16:27

Tu fais comme si tu voulais afficher tes résultats sauf que tu les mets dans un tableau
$p = array();
 
while($result = mysql_fetch_assoc($query)) $p[] = $result['titre'];

Créer un tableau à partir d'une requête MySQL

par cyberlp » 21 mai 2009, 07:33

Bonjour,

J'aimerais savoir comment faire pour obtenir un tableau à partir d'une requête simple sur une base MySQL.

Exemple :

Code : Tout sélectionner

$query = mysql_query("SELECT titre FROM livres");
et j'aimerais qu'il m'affiche la liste des titres sélectionnés dans la BDD dans une variable du type :

Code : Tout sélectionner

$p = array("titre1", "titre2", "titre3"...);

Merci par avance !