Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1743 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Problemes avec mes inclusions aléatoire

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problemes avec mes inclusions aléatoire

n°1434146
GANONEINC
Posté le 31-08-2006 à 10:49:08  profilanswer
 

Bonjour à tous
 
voici le code php  
 

Code :
  1. <?php
  2. $nb_aleatoire="4";
  3. $rep ="includes/";
  4. // on liste les fichiers du repertoire
  5. if ($handle = opendir($rep)) {
  6. $fichiers = array();
  7. while (false !== ($file = readdir($handle))) {
  8. if ($file != "." && $file != ".." ) {
  9. $fichiers[] = $rep . $file;
  10. }
  11. }
  12. closedir($handle);
  13. // On crée le tableau contenant les fichiers à inclure
  14. srand ((double) microtime() * 10000000);
  15. $include_aleatoire = array_rand ($fichiers, $nb_aleatoire);
  16. shuffle($include_aleatoire);
  17. for($i=0;$i<count($include_aleatoire);$i++){
  18. include($fichiers[$include_aleatoire[$i]]);
  19. }
  20. }
  21. ?>


 
 
 
Donc en gros ça consiste à inclure aléatoirement un fichier du dossier includes.
 
 
Seulement chez moi ça inclus tout les fichiers du dossier includes à la suite :s
 
du coup on a plus de contenu aléatoire dans mon " A l'affiche" mais une succesion d'image et descritpion ;s
 
 
Pas tres pratique pour attirer l'attention sur UN élément seulement ^^'
 
 
 
Help me plz !
 

mood
Publicité
Posté le 31-08-2006 à 10:49:08  profilanswer
 

n°1434152
flo850
moi je
Posté le 31-08-2006 à 10:55:13  profilanswer
 

tu fait ca :  

Code :
  1. for($i=0;$i<count($include_aleatoire);$i++){include($fichiers[$include_aleatoire[$i]]);}


 
c'est donc logique que ca inclu tout
 
tu devrais plutôt faire  

Code :
  1. include($fichier[rand(0,sizeof($fichier)-1))];


 
EDIT : j'ai lu ton code en travers, ma solution ne repond pas completement a ta question  
 
je corrige ca de suite :D


Message édité par flo850 le 31-08-2006 à 10:56:44
n°1434218
FMC
Posté le 31-08-2006 à 12:34:58  profilanswer
 

J'ai une solution pour toi, il y a certainement mieux mais ça devrait être fonctionnel.
 
Lorsque tu récupères ta liste de fichier, tu mets une valeur random en tant que clé, ça classera donc ta liste aléatoirement.
 
Ensuite tu fais un foreach() et juste après l'include tu fais un break;.
 
Il faut peut-être taper un ksort(), mais je ne pense pas.
 
C'est un peu bidon comme méthode, mais ça fonctionnera.

n°1434313
GANONEINC
Posté le 31-08-2006 à 15:11:20  profilanswer
 

honte à moi....
 
-_-'
 
 

Code :
  1. for($i=0;$i<count($include_aleatoire);$i++){
  2. include($fichiers[$include_aleatoire[$i]]);
  3. }


 
 
suffisait de metre $i=3 dans mon cas (car j'ai 4 fichier différents dans mon dossier)
 
Voila c'est bon merci !
 
 
Par contre une tite question , est il normal que maintenant que ça marche bien niveau php , le serveyr free retourne si souvent une erreur 500 ? (c'est juste depuis que j'ai uploadé ce fichier)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Problemes avec mes inclusions aléatoire

 

Sujets relatifs
Lecture de date aléatoire.[resolu]creation de dossiers/fichiers a la volee - problemes de droits
[C]Problème d'inclusions imbriquéesProblémes de portée sur un javascript
[resolu] Deux problèmes d'affichages d'images.Problèmes d'accent sous MySql
nombre d'argument aléatoire dans une fonctionCryptage url aléatoire
Plus de sujets relatifs à : Problemes avec mes inclusions aléatoire


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR