Problème tableau php

Slt, je voudrais faire tableau en php seulement mon problème est que mes "tr" n'ont pas de bordures...

Je vous montre mon code:

[code]<html>

<style type="text/css">

body {
background-color:#C0C0C0;
}

</style>

<body>
<h1>Contenu du répertoire</h1><hr/>
<?php

$messageErreur="";

echo afficheContenuDossier("documents");

//void afficheContenuDossier( String : $nomRep )
/**
* Affiche la liste des fichiuers dans le répertoire.
* @param String $nomFichier Reçoit en paramètre le nom du répertoire.
* @return void ne retourne rien .
*/

function afficheContenuDossier($nomRep){
$curseur = opendir($nomRep);
if ($curseur != false) {
$file = readdir($curseur);
echo ("<table border=1 >");
echo ("<tr>"."Nom fichiers");
while ($file != false ) {
$file = readdir($curseur);
for ($tab=0; $tab< sizeof($curseur); $tab++){
echo ( "<td>" . $file . "</td>");
}
echo ("</tr>");
}
echo ("</table>");
closedir($curseur);

}

}

?>

</body>
</html>
[/code]
Configuration: Windows Vista
Opera 9.63

8 réponses

  1. Bonjour
    Si tu parles du texte Nom fichiers, c'est normal, il n'est dans aucune case. Il devrait être entre <td></td> ou <th></th>
    0
    1. Me suis dis aussi.. ^^

      J'ai résolu maintenant mon problème est que je n'ai pas de tableau et je ne pense pas que je peux donc utiliser la fonction count?

      Mon nouveau code:

      <html>

      <style type="text/css">

      body {
      background-color:#C0C0C0;
      }

      table
      {
      border-collapse: collapse;
      }
      td, th /* Mettre une bordure sur les td ET les th */
      {
      border: 1px solid black;
      }
      </style>

      <body>
      <h1>Contenu du répertoire</h1><hr/>
      <?php

      //Variables
      $messageErreur="";

      echo afficheContenuDossier("documents");

      //void afficheContenuDossier( String : $nomRep )
      /**
      * Affiche la liste des fichiers dans le répertoire.
      * @param String $nomFichier Reçoit en paramètre le nom du répertoire.
      * @return void ne retourne rien .
      */

      function afficheContenuDossier($nomRep){
      $curseur = opendir($nomRep);
      if ($curseur != false) {
      $file = readdir($curseur);
      echo ("<table border=1 >");
      echo ("<tr>" . "<th>Nom fichiers</th>" . "<th>Taille en octets</th>" . "<th>Date dernière modification</th>" . "</tr>" );
      while ($file != false ) {
      $file = readdir($curseur);
      for ($tab=0; $tab< count($curseur); $tab++){
      echo ("<tr>");
      echo ( "<td>" . $file . "</td>");
      echo ("</tr>");
      echo ("<tr>");
      echo ( "<td>" . filesize($file) . "</td>");
      echo ("</tr>");

      }
      }

      echo ("</table>");
      closedir($curseur);

      }

      }

      ?>

      </body>
      </html>
      0
      1. Quelqu' un pourrait me dire pourquoi j'ai un problème de boucle svp?

        [code]<html>

        <style type="text/css">

        body {
        background-color:#C0C0C0;
        }

        table
        {
        border-collapse: collapse;
        }
        td, th /* Mettre une bordure sur les td ET les th */
        {
        border: 1px solid black;
        }
        </style>

        <body>
        <h1>Contenu du répertoire</h1><hr/>
        <?php

        //Variables
        $messageErreur="";

        echo afficheContenuDossier("documents");

        //void afficheContenuDossier( String : $nomRep )
        /**
        * Affiche la liste des fichiers dans le répertoire.
        * @param String $nomFichier Reçoit en paramètre le nom du répertoire.
        * @return void ne retourne rien .
        */

        function afficheContenuDossier($nomRep){
        $curseur = opendir($nomRep);
        if ($curseur != false) {
        $file = readdir($curseur);
        echo ("<table border=1 >");
        echo ("<tr>" . "<th>Nom fichiers</th>" . "<th>Taille en octets</th>" . "<th>Date dernière modification</th>" . "</tr>" );
        while ($file != false ) {
        $tableau = array($file);
        if ( !(is_dir($file)) && (!filesize("./documents/".$file !==0 )) ) {

        for ($i=0; $i < sizeof($tableau); $i++){
        echo ("<tr>");
        echo ("<td>" . $tableau[$i] . "</td>");

        for ($i=0 ;$i<1; $i++){
        echo ("<td>" . filesize("./documents/$tableau[$i]") . "</td>");

        }
        }
        }
        echo ("</tr>");
        echo ("</table>");

        }
        }
        closedir($curseur);
        }

        ?>

        </body>
        </html>
        /code
        0
        1. Bonsoir,

          je t'ai rectifié qqs erreurs à première vue:

          <?php
          
          //Variables
          $messageErreur="";
          
          echo afficheContenuDossier("documents");
          
          
          //void afficheContenuDossier( String : $nomRep )
          /**
          * Affiche la liste des fichiers dans le répertoire.
          * @param String $nomFichier Reçoit en paramètre le nom du répertoire.
          * @return void ne retourne rien .
          */
          
          function afficheContenuDossier($nomRep){
          $curseur = opendir($nomRep);
          
          	
          	echo "<table border=1 >";
          	echo "<tr><th>Nom fichiers</th><th>Taille en octets</th><th>Date dernière modification</th></tr>";
          	while ($file = readdir($curseur) ) {
          		$tableau = array($file);
          		if ( !(is_dir($file)) && (filesize("./documents/".$file) !==0 ) ) {
          
          			for ($i=0; $i < sizeof($tableau); $i++){
          				echo ("<tr>");
          				echo ("<td>" . $tableau[$i] . "</td>");
          
          				for ($i=0 ;$i<1; $i++){
          					echo ("<td>" . filesize("./documents/$tableau[$i]") . "</td>");
          
          				}
          			}
          		}
          		echo ("</tr>");
          		echo ("</table>");
          
          	}
          	
          	closedir($curseur);
          }
          
          ?>
          
          
          0
          1. sinon un autre exemple: lecture recursive d'un dossier c ad avec les sous dossiers

            ?php
             global $array_dossiers= array();
            function parcours_dossier($chemin_dossier){
            
            	
            	$dossier = opendir($chemin_dossier);// On ouvre le dossier à lire
            
            	while($element = readdir($dossier)){// On parcours l'ensemble des éléments présent dans le dossier
            		if(($element != ".") && ($element != "..")){ // On ne s'occupe ni du répertoire courant ni du répertoire parent
            			if(file_exists($chemin_dossier."/".$element) && is_dir($chemin_dossier."/".$element)){ // Si le fichier est un dossier
            
            				//echo "".$element."<br>";
            				if(array_key_exists($element,$array_dossiers)){//si la clef existe déja c'est un sous dossier, on rajoute au niveau en dessous
            					$array_dossiers[]=$element; //cle premier niveau.
            				}else{
            
            				}				
            				parcours_dossier($chemin_dossier."/".$element);// On parcours les sous dossiers (c'est ici qu'intervient la récursivité car la fonction s'appelle elle-même)
            
            			}else{
            
            				echo "<a href='".$chemin_dossier."/".$element."' target='_blank'>".$element."</a><br>";
            			}
            		}
            	}
            	closedir($dossier);
            }
            
            parcours_dossier("test/");// On appelle la fonction de parcours des dossiers
            
            
            
            
            ?> 
            
            0
            1. Merci j'ai réussi ça fonctionne, j'ai un dernier problème, mes conditions ne fonctionnent pas... :/

              Je ne devrais voir que les fichiers au format "txt", "csv" ou "jpg" et il m'affiche tout comme un fichier "avi" ou "png"...

              if ( ! isset($_REQUEST['fichier'] ) )
              {
              echo "Paramètre non renseigné";
              }
              else{
              $nomFichier=$_REQUEST['fichier'];
              if ( ! is_file($nomFichier) )
              {
              echo "Pas un fichier";
              }
              else{

              if ( ! ((getExtension($nomFichier)=="txt") or (getExtension($nomFichier)=="csv") or (getExtension($nomFichier)=="jpg")))
              {
              echo "Pas un fichier";
              }
              else{
              if ( getExtension($nomFichier)=="txt")
              {
              afficheFichierText( $nomFichier );
              }
              else{
              if (getExtension($nomFichier)=="csv")
              {
              afficheFichierCSV( $nomFichier );
              }
              else{
              if (getExtension($nomFichier)=="jpg")
              {
              afficheFichierImage($nomImage);
              }
              }
              }
              }
              }
              }

              function afficheFichierCSV( $nomFichier ){
              $lesenregistrements=array();
              $lesenregistrements= file($nomFichier);
              echo ("<table border=1>");
              for ($i=0; $i< sizeof($lesenregistrements); $i++){
              echo ("<tr>");
              $unenregistrement=array();
              //Range chaque champ de l'enregistrement dans un tableau (Le caractère de troncature est ";" ou ":")
              $unenregistrement= split('[;:]' ,$lesenregistrements[$i]);
              for ($j=0; $j< sizeof($unenregistrement); $j++){
              echo ( "<th>" . $unenregistrement[$j] . "</th>");
              }
              echo ("</td>");
              }
              }
              echo ("<br/>");
              echo ("</table>");

              //void afficheFichierText( String : $nomFichier )
              /**
              * Génère l'affichage du contenu du fichier de text brut (format .txt).
              * @param String $nomFichier Reçoit en paramètre le nom du fichier (Plus exactement le "path" : url relative par rapport à la position de cette bibliothèque.
              * @return void ne retourne rien.
              */
              function afficheFichierText( $nomFichier ){
              $Fichier=$nomFichier;
              if ($TabFich = file($Fichier)) {
              for ($i = 0; $i < count ($TabFich); $i++){
              echo $TabFich[$i]."<br/>";
              }
              }
              }

              //string getExtension(String : $nomFic)
              /**
              * Retourne l'extension du fichier
              * @param String $nomFic nom du fichier au format chaîne de caractères.
              * @return String l'extension au format chaîne de caractères ou null s'il ni à pas d'extensions.
              */
              function getExtension($nomFic){
              $trunc = split('[.]', $nomFic);
              if(sizeof($trunc)>1){
              return $trunc[sizeof($trunc)-1];
              }else {
              return null;
              }
              }

              function afficheFichierImage($nomImage){
              $image = "<img src='".$nomImage."'>";
              echo $image;
              0