xpatval Posté 26 Septembre 2008 Posté 26 Septembre 2008 Bonjour, Soit un fichier vidéo file_vid, découpé en x parties (file_x). mon script agit comme suit: recherche dans un répertoire afin de récupérer différentes valeurs sur les fichiers trouvés (dont je ne connais pas le nombre ni leurs valeurs) qui correspondent à ma sélection (la sélection se fait sur le nom générique, les fichiers réels se nommant par exemple file_1, file_2,..., file_10). Ces valeurs sont stockés dans un tableau. array_push($tab,array("nom"=>$Entry,"duree"=>$temps,"taille"=>$taille)); J'affiche ensuite les entrées du tableau ($strm) sous forme de liens, afin de pouvoir les lire en streaming . for ($v = 0; $v < count($strm); $v++) { $k = $v + 1; ?> <tr> <td style="text-align:center; "><a target="_blank" href="mem_vid_strm.php?file=<?php echo $strm[$v]['nom'];?>&rep=<?php echo $rep;?>" alt="">Part <?php echo $k;?>:</a> <?php echo $strm[$v]['duree'];?></td> </tr> <?php } En local, les fichiers affichés correspondent bien aux fichiers trouvés: file_1 affiché est bien file_1 dans le repertoire, etc. Par contre, sur le serveur de l'hébergeur, je constate que file_1 affiché devient file_4, file_2 => file_3, etc. (pourquoi ?). Aussi, est-il possible de trier les entrées du tableau de manière à faire correspondre l'affichage aux bons fichiers ? Et comment ? Merci de vos réponses, si vous avez réussi à comprendre mon souci... xpatval
xpatval Posté 30 Septembre 2008 Auteur Posté 30 Septembre 2008 Bon, en fait, c'est ma boucle qui ne va pas. Seulement voilà, je nage pour récupérer les valeurs que je souhaite. Alors je recommence à expliquer: Mon tableau est construit comme suit: $tab = ("cle1" => $data1, "cle2 => $data2, "cle3" => $data3); j'ai bien entendu plusieurs lignes dans mon tableau, $data1, $data2 et $data3 sont bien renseignés avec les valeurs correspondantes. Si je boucle comme suit: foreach ($tab as $val) { foreach ($val as $val2) { echo "$val2"; }} j'obtiens cela: 1ère entrée de mon tableau: $data1 $data2 $data32ème entrée de mon tableau: $data1 $data2 $data3...Xème entrée de mon tableau: $data1 $data2 $data3 Comment doit-on faire pour pouvoir utiliser seulement $data1 et $data2, par exemple, sans prendre en compte $data3 ? Merci de votre aide, xpatval
xpatval Posté 30 Septembre 2008 Auteur Posté 30 Septembre 2008 Il faudrait me créer un topic dédié...Je pose les questions, et je me réponds. C'est normal, quand on est con. Et ça rime en plus. Bon, le problème semble résolu. Bêtement. A force de ne pas utiliser les bonnes fonctionnalités... Donc, pour ceux que ça intéresse, la boucle énoncé dans mon premier message était tout à fait correcte, à condition d'utiliser la bonne fonction de tri d'un tableau. Ayant un tableau de la forme clé => valeur, je supposais qu'il fallait utiliser soit un asort, soit un ksort. En fait, le sort suffit amplement, et le tableau est trié comme je le voulais. La boucle "for" était correct, et avec le bon tri, on y arrive... Voili voilou. xpatval
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant