REmplir un tableau dans une boucle.

REmplir un tableau dans une boucle. - PHP - Programmation

Marsh Posté le 07-05-2004 à 09:45:03    

Je rencontre le prboleme suivant.
Je list les fichier d'un rep a l'aide d'une boucle, et j'en rpfite au passa pour remplir un tableau tab avec un indice.
Le probleme est que comme je ne le rempli pas d'un seul coup, a chaque fois que je defini une nouvelle valeur, il considere que c un nouveau tableau, il ne considere donc que mon dernier enregistrement du tableau.
 
Comment ki fo faire? :whistle:  
 
 
 :hello:

Reply

Marsh Posté le 07-05-2004 à 09:45:03   

Reply

Marsh Posté le 07-05-2004 à 09:46:37    

montre nous cette boucle :o


---------------
Posté depuis des chiottes, sales. Me gusta.
Reply

Marsh Posté le 07-05-2004 à 09:52:59    

while ($f = readdir($dir)) {
   if ((is_file($rep.$f)) and ereg(".py",$f)){
    list( $nom, $ext) = split( '[.]', $f );
    $tab = array($compteur => $nom.".".$ext);
       echo "<option value=$compteur>$nom";
       comppteur++;  
   }
  }
 
 
Voila, je comptais remplir $tab($compteur) avec le nom de mon script. Ca marche mais comme je dis, ca ne m'affecte que la derniere fois que je touche au tableau.
Ici, tab(1)=tab(2)=...=0 et tab(7)=monscript.py
 

Reply

Marsh Posté le 07-05-2004 à 09:53:34    

quand je dis =0, je veu dire quia rien dedans plutot

Reply

Marsh Posté le 07-05-2004 à 09:55:23    

websi a écrit :

while ($f = readdir($dir)) {
   if ((is_file($rep.$f)) and ereg(".py",$f)){
    list( $nom, $ext) = split( '[.]', $f );
    $tab = array($compteur => $nom.".".$ext);
       echo "<option value=$compteur>$nom";
       comppteur++;  
   }
  }
 
 
Voila, je comptais remplir $tab($compteur) avec le nom de mon script. Ca marche mais comme je dis, ca ne m'affecte que la derniere fois que je touche au tableau.
Ici, tab(1)=tab(2)=...=0 et tab(7)=monscript.py


 
la fonction array sert a déclarer un tableau donc c'est pas étonnant.
$tab[$compteur] = "$nom.$ext";
ou tout simplement
$tab[] = "$nom.$ext";


---------------
Posté depuis des chiottes, sales. Me gusta.
Reply

Marsh Posté le 07-05-2004 à 09:55:33    

c'est normal, à chaque boucle tu redéclares ton tableau [:proy]
déclare ton tableau avant ton while ($tab = array();)
et ensuite un coup de array_push (ou autre façon de nourrir un tableau ;) ) à la place de ton "$tab = array($compteur => $nom.".".$ext);"

Reply

Marsh Posté le 07-05-2004 à 09:55:37    

websi a écrit :

while ($f = readdir($dir)) {
   if ((is_file($rep.$f)) and ereg(".py",$f)){
    list( $nom, $ext) = split( '[.]', $f );
    $tab = array($compteur => $nom.".".$ext);
       echo "<option value=$compteur>$nom";
       comppteur++;  
   }
  }
 
 
Voila, je comptais remplir $tab($compteur) avec le nom de mon script. Ca marche mais comme je dis, ca ne m'affecte que la derniere fois que je touche au tableau.
Ici, tab(1)=tab(2)=...=0 et tab(7)=monscript.py


 
c normal, tu recrees ton tableau a chaque fois
fais plutot $tab=array(nb_element_de_ton_rep);
et ensuite, qd tu parcours, tu fais  
$tab[$i]=ta_valeur;
 
(n'oublies pas d'incrementer le $i a chaque passage de boucle)
 
edit : multi-grilled :hot:


Message édité par alien_nan le 07-05-2004 à 09:56:32
Reply

Marsh Posté le 07-05-2004 à 09:55:39    

et is le fichier s'apelle mysql.conf.php, c'est un peu [:dawadtc] ton split nan? :)

Reply

Marsh Posté le 07-05-2004 à 09:57:22    

oulla, merci merci de vos reponse lol, j'ai fait la connerie qui a fait reagir tout le monde, mdr!!!
 
chacal_one333: DTC?  bon sinon t'inquitte, mon rep ne contient que des .py :)
Merci les gars  
@+ pour une question moins con j'espere.

Reply

Marsh Posté le 07-05-2004 à 09:59:55    

dans ton cul ca veut dire :D
 
En fait je voulait te dire que si ton fichier se nomme
 
mysql.conf.truc.php, avec ton
 
list( $nom, $ext) = split( '[.]', $f );  
 
$nom=mysql
$ext=conf.truc.php
 
perso j'aurai fait :
 

Code :
  1. $file=explode(".", $f);
  2. $ext=$file[count($file)-1];


:)


Message édité par Profil supprimé le 07-05-2004 à 10:00:07
Reply

Marsh Posté le 07-05-2004 à 09:59:55   

Reply

Marsh Posté le 07-05-2004 à 10:00:14    

Parfait ca marche :=)
 
"Evidement que ca marche, tu crois qu'on te dis des conneries!!!???"
 

Reply

Marsh Posté le 07-05-2004 à 10:01:40    

chacal_one333: bien sur j'ai capté mais mon repertoire script ne contien que des machins.py :)

Reply

Marsh Posté le 07-05-2004 à 10:02:15    

ha ok [:dawa]

Reply

Marsh Posté le 07-05-2004 à 10:02:51    

and the winner is :  
 
Boulax        Posté le 07-05-2004 à 09:55:23  [:megabug]    
Dropsy        Posté le 07-05-2004 à 09:55:33 (+10s)    
alien_nan     Posté le 07-05-2004 à 09:55:37 (+14S)
chacal_one333 Posté le 07-05-2004 à 09:55:39 (+16s)    


---------------
Posté depuis des chiottes, sales. Me gusta.
Reply

Marsh Posté le 07-05-2004 à 11:02:57    

boulax a écrit :

and the winner is :  
 
Boulax        Posté le 07-05-2004 à 09:55:23  [:megabug]    
Dropsy        Posté le 07-05-2004 à 09:55:33 (+10s)    
alien_nan     Posté le 07-05-2004 à 09:55:37 (+14S)
chacal_one333 Posté le 07-05-2004 à 09:55:39 (+16s)


 
ma réponse était plus complète [:mmmfff]

Reply

Marsh Posté le 07-05-2004 à 11:05:48    

gna gna gna gna  :D


---------------
Posté depuis des chiottes, sales. Me gusta.
Reply

Sujets relatifs:

Leave a Replay

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