Problème tableau php

Absot Messages postés 819 Statut Membre -  
Absot Messages postés 819 Statut Membre -
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]
A voir également:

8 réponses

toto
 
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
Absot Messages postés 819 Statut Membre 44
 
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
Absot Messages postés 819 Statut Membre 44
 
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
Alain_42 Messages postés 5413 Statut Membre 894
 
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alain_42 Messages postés 5413 Statut Membre 894
 
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
Absot Messages postés 819 Statut Membre 44
 
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
Absot Messages postés 819 Statut Membre 44
 
Aucun avis svp?
0
Absot Messages postés 819 Statut Membre 44
 
:(
0