Garder le résultat d'une requete en mémoire avec PHP Part 2 [Résolu]

Garder le résultat d'une requete en mémoire avec PHP Part 2 [Résolu] - PHP - Programmation

Marsh Posté le 01-02-2005 à 15:19:00    

Bonjour à tous,
 
G créer un requete php/odbc qui marche super bien.
Je la met dans une liste déroulante, pas de soucis...
Maintenant g une 40 de listes deroulantes contenant exactement le meme resultat
Evidemment je souhaite ne pas lancer la requete 40 fois (c clair...) mais je ne sais pas trop comment la stocker ??
Je vous poste les codes que j'ai entammé
script fonctions.php

Citation :


function liste_activite()
{
 // Connection Pervasive
 $pervasive = odbc_connect("hotels", "", "" );
 $req_perv = odbc_exec($pervasive, "SELECT * from SQL_ACTIVITE ORDER BY tLibelleActivite ASC" );    
 while ( odbc_fetch_row ($req_perv) )
  {
  $rubrique = odbc_result($req_perv, 1);
  $nom_rubrique = odbc_result($req_perv, 2);
  echo "<option value='$rubrique'>$nom_rubrique</option>";
  }
 odbc_close($pervasive);  
}


Ensuite j'apel cette fonction une quarantaine de fois par  

Citation :


include("includes/fonctions.php" );
<select name="activite1">
<?php
liste_activite();
?>
</select>
<select name="activite2">
<?php
liste_activite();
?>
</select>
<select name="activite3">
<?php
liste_activite();
?>
</select>
etc etc ......


Voila donc ce qui serait super c genre j'apel sur la meme page la fonction de connexion qui recup les données.
Avec le while on construit le tableau
Ensuite sur cette meme page on affiche a chaque fois le tableau pour construire mes 40 listes deroulantes
 
Dans le principe c ca que je veu malheureusement je n'y arrive pas... (ptet pas bien reveillé)
Merci d'avance pour toutes réponses
 
Pour info la part 1 est la : http://forum.hardware.fr/forum2.ph [...] warefr.inc


Message édité par kwa29 le 01-02-2005 à 15:43:03

---------------
Visiter mon site http://kwa29.com
Reply

Marsh Posté le 01-02-2005 à 15:19:00   

Reply

Marsh Posté le 01-02-2005 à 15:21:51    

edit : grosse merdouille [:petrus75]


Message édité par Profil supprimé le 01-02-2005 à 15:33:25
Reply

Marsh Posté le 01-02-2005 à 15:23:18    

Terrible t trop rapide chacal_one333
Mais pareil dans ce cas car tu apel la fonction a chaque fois donc 40 fois


---------------
Visiter mon site http://kwa29.com
Reply

Marsh Posté le 01-02-2005 à 15:27:25    

ha non autant pour moi, c'est pas top top vu que t'es echo sont dedans
 
voila l'idéal
 

Code :
  1. * function liste_activite()
  2.      {
  3.      // Connection Pervasive
  4.      $pervasive = odbc_connect("hotels", "", "" );
  5.      $req_perv = odbc_exec($pervasive, "SELECT * from SQL_ACTIVITE ORDER BY tLibelleActivite ASC" ); 
  6.      $array = array(); 
  7.      while ( odbc_fetch_row ($req_perv) )
  8.        {
  9.          $rubrique = odbc_result($req_perv, 1);
  10.          $nom_rubrique = odbc_result($req_perv, 2);
  11.          $array[$rubrique] = $nom_rubrique;
  12.        } 
  13.      odbc_close($pervasive);
  14.      return $array; 
  15.      }


 
ensuite tu fait ton select
 

Code :
  1. $myArray = liste_activite();
  2. echo "<select blabla>";
  3. foreach($myArray as $key => $val) {
  4.      echo "<option value=\"$key\">$val</option>\n";
  5. }
  6. echo "</select>"


Message édité par Profil supprimé le 01-02-2005 à 15:29:38
Reply

Marsh Posté le 01-02-2005 à 15:27:48    

Exact je m'excuse et je m'auto proclame "petit scarabée"


---------------
Visiter mon site http://kwa29.com
Reply

Marsh Posté le 01-02-2005 à 15:28:27    

Ha oui c'est intéressant comme solution.
 
Par contre, je vois un echo dans la boucle while, et donc je ne comprends pas bien ce qui est exactement stocké dans le tableau retourné. Peux-tu détailler stp ?

Reply

Marsh Posté le 01-02-2005 à 15:28:42    

non j'etait en tord, j'avais fait de la merde, j'ai delete mon post et refait un plus clean
 
si tu as des question hesite pas

Reply

Marsh Posté le 01-02-2005 à 15:29:39    

chacal > On a posté en même temps... Ne tiens donc pas compte de ma remarque, de fait là ça devient limpide !

Reply

Marsh Posté le 01-02-2005 à 15:32:02    

y'avait pas une histoire de session dans le premier topic ?

Reply

Marsh Posté le 01-02-2005 à 15:40:19    

Tu es trop fort ca marcfhe o poil...
Merci beaucoup chacal je garde o chaud cet petite technique bien sympathique et ferme le sujet comme résolut.
 
Encore merci


---------------
Visiter mon site http://kwa29.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed