affichage

affichage - PHP - Programmation

Marsh Posté le 09-05-2010 à 22:30:02    

Bonsoir mes amis j'ai un probleme de l'affichige de contenu d'un dossier :
Index of /dossier/dossierpere/d2
[ICO] Name Last modified Size Description
[DIR] Parent Directory    -
[TXT] exam.txt  04-May-2010 14:55  0
[TXT] note2007.txt  04-May-2010 14:55  0
 
je veux avoir just:
        exam.txt    
        note2007.txt  
 
et aussi des dossiers avec des icones et merci pour votre aide. voila le code php de l'affichage:
 
 
 
<?php
$dir_nom = '../dossier/dossierpere'; // dossier listé (pour lister le répertoir courant : $dir_nom = '.'  --> ('point')
$dir = opendir($dir_nom) or die('Erreur de listage : le répertoire n\'existe pas'); // on ouvre le contenu du dossier courant
$fichier= array(); // on déclare le tableau contenant le nom des fichiers
$dossier= array();
 
 
 
 // on déclare le tableau contenant le nom des dossiers
while($element = readdir($dir)) {
 if($element != '.' && $element != '..') {
  if (!is_dir($dir_nom.'/'.$element)) {$fichier[] = $element;}
  else {$dossier[] = $element;}
 }
}
 
closedir($dir);
 
if(!empty($dossier)) {
 sort($dossier); // pour le tri croissant, rsort() pour le tri décroissant
 echo "Liste des dossiers accessibles dans '$dir_nom' : \n\n";
 echo "\t\t<ul>\n";
  foreach($dossier as $lien){
 
   echo "\t\t\t<li><a href=\"$dir_nom/$lien \">$lien</a></li>\n";
  }
 echo "\t\t</ul>";
}
 
if(!empty($fichier)){
 sort($fichier);// pour le tri croissant, rsort() pour le tri décroissant
 echo "Liste des fichiers/documents accessibles dans '$dir_nom' : \n\n";
 echo "\t\t<ul>\n";
  foreach($fichier as $lien) {
   echo "\t\t\t<li><a href=\"$dir_nom/$lien \">$lien</a></li>\n";
  }
 echo "\t\t</ul>";
 }
 
 
?>
 
 

Reply

Marsh Posté le 09-05-2010 à 22:30:02   

Reply

Marsh Posté le 10-05-2010 à 09:28:42    

quel est le problème ?

Reply

Marsh Posté le 10-05-2010 à 21:55:34    

remplace  

Code :
  1. if($element != '.' && $element != '..') {


par  

Code :
  1. if($element != '.' && $element != '..' && ($element = 'txt' || $element = 'TXT') ) {


 
ça devrais suffir


---------------
Tout à commencé par un rêve...
Reply

Marsh Posté le 11-05-2010 à 09:45:25    

stef, dans la ligne que tu as postée, il faut remplacer  
 
&& ($element = 'txt' || $element = 'TXT') ) {
 
par
 
&& ($element == 'txt' || $element == 'TXT') ) {

Reply

Marsh Posté le 11-05-2010 à 10:32:00    

voir par

Code :
  1. (strtolower($element) === 'txt')

Reply

Marsh Posté le 11-05-2010 à 11:02:27    

strtolower ça renvoie forcément un string, donc j'vois pas l'intérêt :o

Reply

Marsh Posté le 11-05-2010 à 11:28:06    

Fred999 a écrit :

strtolower ça renvoie forcément un string, donc j'vois pas l'intérêt :o


tu dis ca par rapport au "===" ?

Reply

Marsh Posté le 11-05-2010 à 14:58:01    

Bin oui :o
 
Sinon effectivement vaut mieux pas tenir compte de la casse.

Reply

Marsh Posté le 11-05-2010 à 21:47:14    

désolé :jap:
oubli de relecture


---------------
Tout à commencé par un rêve...
Reply

Marsh Posté le 11-05-2010 à 22:38:14    

Fred999 a écrit :

Bin oui :o
 
Sinon effectivement vaut mieux pas tenir compte de la casse.


oui mais tu comprends, sinon c'est plus lent :o

Reply

Marsh Posté le 11-05-2010 à 22:38:14   

Reply

Marsh Posté le 13-05-2010 à 11:19:21    

merci j'ai regle le pb.

Reply

Marsh Posté le 13-05-2010 à 14:13:53    

si tu es sous système unix :
$tabfile=explode("\n", trim(shell_exec("ls -1" )));

 

Comment ça c'est triché :D


Message édité par chaced le 13-05-2010 à 14:14:14

---------------
CPU-Z | Timespy | Mes bd
Reply

Marsh Posté le 13-05-2010 à 20:02:22    

Code :
  1. $files = scandir($dirname);

Reply

Marsh Posté le 20-05-2010 à 01:01:26    

merci pour tous!!!

Reply

Sujets relatifs:

Leave a Replay

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