Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/07/2008, 11h21   #1
Membre éprouvé
 
Inscription : août 2007
Messages : 494
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations forums :
Inscription : août 2007
Messages : 494
Points : 447
Points : 447
Par défaut [Tableaux] Affichage sur deux ou trois colonnes

Salut, j'ai un souci pour l'affichage des résultats d'un script que je souhaiterai affiché sur 2 voir 3 colonnes.

Voici le script en question il fonctionne pour un affichage sur 1 seule colonne mais vu que la liste est plutôt longue ce n'est pas très esthétique:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?php
{
//extension a exclure
$Extensions = (eregi(".php",$Fichier) or eregi(".htm",$Fichier) or eregi(".html",$Fichier));
$Exclu=array(".", "..",);
set_time_limit(0);
// Début du tableau d affichage des fichiers ne portant pas l'extension voulu
?>
<table border="1" cellspacing="0" bordercolordark="white" bordercolorlight="white" align="center" width="90%" bordercolor="white">
    <tr>
        <td width="100%" align="left" style="font-weight:bold; color:#FFFFCC; background-color:gray;"><a class=info onclick='return false' href="javascript:;"><span>
<p>Voici la liste des fichiers ne portant pas les extensions php, htm, html,</td>
    </tr>
    <tr>
        <td width="100%" align="left">
            <br>&nbsp;
<?php
//fonction pour le scanne des fichiers
function scandir($Dossier)
//debut de la fonction scandir
{
// ouverture de $Dossier
$Chemin  = opendir($Dossier);
// Boucle 
while  ($Fichier = readdir($Chemin))
//debut de la boucle pour la recherche de tous les fichiers n aillant pas la bonne extension
{
//si le script localise un repertoire il affiche :
if(is_dir("$Dossier/$Fichier")==true && $Fichier != "." && $Fichier != "..")
{
//on exclue les fichiers nommee dans les paramètres 
if(in_array($Fichier, $Exclu)){ continue; }
// Début du scan auto
scandir("$Dossier/$Fichier");
//fin du if d affichage pour les dossiers non exclue
}
//si ce n est pas un dossier on effectue les opérations suivantes
else
//debut du if d affichage pour les fichiers
{
//on exclue les fichiers nommee dans les paramètres
if(in_array($Fichier, $Exclu)){ continue; }
//si c est un fichier dont l extension n apparait pas dans les paramètres on affiche ceci :
if ($Extensions == false)
{ ?>
<b><font color="#009933">- <?php echo $Fichier ; ?><br></font></b>
<?php
}
//fin du if d affichage pour les fichiers
}
//fin de la boucle pour la recherche des fichiers exclus de la recherche
} 
//On ferme le scan
closedir($Chemin);
//fin de la fonction scandir .. (deux points fait la recherche en allant d un dossier en arrière
}
scandir("../..");
//fin du if pour le scanne et la mise a jour de la base de donnée
 } 
//Une fois tous les fichiers et dossiers scanner  on ferme le tableau
?>
</td>
    </tr>
</table>
__________________


Avant de poster faites une recherche et/ou consultez la FAQ.

Un sujet est résolu n'oubliez pas le tag
kilian67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/07/2008, 11h55   #2
Membre éprouvé
 
Avatar de defcon_suny
 
Développeur informatique
Inscription : décembre 2006
Messages : 436
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : décembre 2006
Messages : 436
Points : 486
Points : 486
Salut,

Ceci pourrait t'aider
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
<html>
<head>
</head>
<body>
<?php
$Tfiles = array("f1.html","f2.html","f3.php","f4.jpg","f5.php","f6.gif","f7.jpg","f8.exe");
$nbr_colonne = 2;
echo '<table border="1">';
echo '<tr>';
$i=0;
foreach($Tfiles as $v){
	$td .= '<td>'.$v.'</td>';
	if ($i % $nbr_colonne == 0){
		echo '</tr><tr>';
	}else{
		echo $td;
		$td='';	
	}
	$i++;	
}
echo '</tr>';
echo '</table>';
?>
</body>
</html>
à toi de l'adapter
defcon_suny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 19h09   #3
Membre éprouvé
 
Inscription : août 2007
Messages : 494
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations forums :
Inscription : août 2007
Messages : 494
Points : 447
Points : 447
Ok merci pour ta réponse.
J'ai fait un essai et ton code correspond a peu de chose à ce que je souhaiterai, par contre dans mon script je scan les fichiers qui sont présent sur le serveur ce qui est récupéré par la boucle et affiché par $Fichier et la je bloque car je n'arrive pas a mettre toutes les valeurs trouvées dans un tableau pour les réafficher ensuite sur 2 colonnes.
__________________


Avant de poster faites une recherche et/ou consultez la FAQ.

Un sujet est résolu n'oubliez pas le tag
kilian67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 20h50   #4
Membre éprouvé
 
Avatar de defcon_suny
 
Développeur informatique
Inscription : décembre 2006
Messages : 436
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : décembre 2006
Messages : 436
Points : 486
Points : 486
Faut chercher un peu...
defcon_suny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/07/2008, 21h16   #5
Membre éprouvé
 
Inscription : août 2007
Messages : 494
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations forums :
Inscription : août 2007
Messages : 494
Points : 447
Points : 447
J'ai chercher sur le net notamment dans les FAQs du site et j'ai fait cela

Code :
1
2
3
4
5
6
7
8
9
10
$i = 0;
if (is_int($i/2)) {
?>
<td> <?php } else { ?> <tr><td> <?php } ?>
<b><font color="#009933">- <?php echo $Fichier ; ?><br></font></b>
<?php
if (is_int($i/2)) {
?>
</td> <?php } else { ?> </td></tr> <?php } 
$i ++;
Mais peu importe l'endroit ou je place les <td> ou <td><tr> je n'arrive pas a avoir le résultat voulu malgré que je m'en rapproche.

Tels qu'il est l'affichage se fait sur une seule ligne
__________________


Avant de poster faites une recherche et/ou consultez la FAQ.

Un sujet est résolu n'oubliez pas le tag
kilian67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 10h51   #6
Membre éprouvé
 
Avatar de defcon_suny
 
Développeur informatique
Inscription : décembre 2006
Messages : 436
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : décembre 2006
Messages : 436
Points : 486
Points : 486
Un truc comme ca...
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
 
<html>
<head>
</head>
<body>
<?php
function p_scandir($Dossier){
	$Tfiles = array();
	// Extension a exclure
	$Extensions = array("php","htm","html");
	$Exclu=array(".", "..",);
	// ouverture de $Dossier
	$Chemin  = opendir($Dossier);
	// Boucle 
	while  ($Fichier = readdir($Chemin)){
	if(is_dir("$Dossier/$Fichier")==false && $Fichier != "." && $Fichier != ".."){
		//debut du if d affichage pour les fichiers
		$e = explode(".",$Fichier);
		//si le fichier a une extension permise
		if (!in_array($e[1],$Extensions)){
			//On l'ajoute au tableau de retour
			array_push($Tfiles,$Fichier);
			}
		}
	}
	closedir($Chemin);
	return $Tfiles;
	}
$Tfiles = p_scandir("../..");
$nbr_colonne = 2;
echo '<table border="0">';
echo '<tr>';
$i=0;
foreach($Tfiles as $v){
	$td .= '<td>'.$v.'</td>';
	if ($i % $nbr_colonne == 0){
		echo '</tr><tr>';
	}else{
		echo $td;
		$td='';	
	}
	$i++;	
}
echo '</tr>';
echo '</table>';
?>
</body>
</html>
defcon_suny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 13h04   #7
Membre éprouvé
 
Inscription : août 2007
Messages : 494
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations forums :
Inscription : août 2007
Messages : 494
Points : 447
Points : 447
Je te remercie defcon_suny c'est ça qu'il me faut, mais la le script ne détecte plus tous les fichiers.
__________________


Avant de poster faites une recherche et/ou consultez la FAQ.

Un sujet est résolu n'oubliez pas le tag
kilian67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 14h19   #8
Membre éprouvé
 
Avatar de defcon_suny
 
Développeur informatique
Inscription : décembre 2006
Messages : 436
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : décembre 2006
Messages : 436
Points : 486
Points : 486
Tous les fichiers sauf les .html, .htm et .php
defcon_suny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 15h33   #9
Membre éprouvé
 
Inscription : août 2007
Messages : 494
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations forums :
Inscription : août 2007
Messages : 494
Points : 447
Points : 447
Oui ça c'est bon mais en principe le script de base va scanner dans tous les dossiers présent comme par exemple les images mais celui que tu m'a donné va de 2 dossiers en arrière et s'arrête la.
Du moins c'est le resultat que j'obtiens.
__________________


Avant de poster faites une recherche et/ou consultez la FAQ.

Un sujet est résolu n'oubliez pas le tag
kilian67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/07/2008, 15h43   #10
Membre éprouvé
 
Avatar de defcon_suny
 
Développeur informatique
Inscription : décembre 2006
Messages : 436
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : décembre 2006
Messages : 436
Points : 486
Points : 486
Remplace la fonction p_scandir par ceci :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
 
<?php
function p_scandir($Dossier)
	{
	// ouverture de $Dossier
	$Tfiles = array();
	$Chemin  = opendir($Dossier);
	$Extensions = (eregi(".php",$Fichier) or eregi(".htm",$Fichier) or eregi(".html",$Fichier));
	$Exclu=array(".", "..",);
	// Boucle 
	while  ($Fichier = readdir($Chemin))
	//debut de la boucle pour la recherche de tous les fichiers n aillant pas la bonne extension
		{
		//si le script localise un repertoire il affiche :
		if(is_dir("$Dossier/$Fichier")==true && $Fichier != "." && $Fichier != "..")
		{
			//on exclue les fichiers nommee dans les paramètres 
			if(in_array($Fichier, $Exclu)){ continue; }
			// Début du scan auto
			p_scandir("$Dossier/$Fichier");
			//fin du if d affichage pour les dossiers non exclue
			}
		//si ce n est pas un dossier on effectue les opérations suivantes
		else
		//debut du if d affichage pour les fichiers
		{
			//on exclue les fichiers nommee dans les paramètres
			if(in_array($Fichier, $Exclu)){ continue; }
			//si c est un fichier dont l extension n apparait pas dans les paramètres on affiche ceci :
			if ($Extensions == false)
			{ 
				array_push($Tfiles,$Fichier);
			}
			//fin du if d affichage pour les fichiers
		}
		//fin de la boucle pour la recherche des fichiers exclus de la recherche
	} 
	//On ferme le scan
	closedir($Chemin);
	return $Tfiles;
	//fin de la fonction scandir .. (deux points fait la recherche en allant d un dossier en arrière
	}
 
?>
defcon_suny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/07/2008, 12h53   #11
Membre éprouvé
 
Inscription : août 2007
Messages : 494
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations forums :
Inscription : août 2007
Messages : 494
Points : 447
Points : 447
C'est toujours pareil le script va de 2 dossiers en arrière et s'arrête la alors qu'il devrait scanner les fichiers présent dans les autres dossiers présent sur le serveur
__________________


Avant de poster faites une recherche et/ou consultez la FAQ.

Un sujet est résolu n'oubliez pas le tag
kilian67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/07/2008, 13h11   #12
Membre éprouvé
 
Avatar de defcon_suny
 
Développeur informatique
Inscription : décembre 2006
Messages : 436
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : décembre 2006
Messages : 436
Points : 486
Points : 486
Oui! j'étais passé au-dessus de la récursivité de la fonction...

ceci fonctionne, à toi de jouer :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
 
 
 
<html>
<head>
</head>
<body>
<?php
$GLOBALS["Tfiles"]=array();
 
function p_scandir($Dossier)
	{
	// ouverture de $Dossier
	$Tfiles = array();
	$Chemin  = opendir($Dossier);
	$Extensions = array("php","htm","html");
	$Exclu=array(".", "..",);
	// Boucle 
	while  ($Fichier = readdir($Chemin))
	//debut de la boucle pour la recherche de tous les fichiers n aillant pas la bonne extension
		{
		//si le script localise un repertoire il affiche :
		if(is_dir("$Dossier/$Fichier")==true && $Fichier != "." && $Fichier != "..")
		{
			//on exclue les fichiers nommee dans les paramètres 
			if(in_array($Fichier, $Exclu)){ continue; }
			// Début du scan auto
			p_scandir("$Dossier/$Fichier");
			//fin du if d affichage pour les dossiers non exclue
			}
		//si ce n est pas un dossier on effectue les opérations suivantes
		else
		//debut du if d affichage pour les fichiers
		{
			//on exclue les fichiers nommee dans les paramètres
			if(in_array($Fichier, $Exclu)){ continue; }
			$e = explode(".",$Fichier);
			//si le fichier a une extension permise
			if (!in_array($e[1],$Extensions)){
				array_push($GLOBALS["Tfiles"],$Fichier);
			}
			//fin du if d affichage pour les fichiers
		}
		//fin de la boucle pour la recherche des fichiers exclus de la recherche
	} 
	//On ferme le scan
	closedir($Chemin);
	//fin de la fonction scandir .. (deux points fait la recherche en allant d un dossier en arrière
	}
 
 
p_scandir("../..");
$nbr_colonne = 2;
echo '<table border="0">';
echo '<tr>';
$i=0;
foreach($GLOBALS["Tfiles"] as $v){
	$td .= '<td>'.$v.'</td>';
	if ($i % $nbr_colonne == 0){
		echo '</tr><tr>';
	}else{
		echo $td;
		$td='';	
	}
	$i++;	
}
echo '</tr>';
echo '</table>';
?>
</body>
</html>
defcon_suny est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/07/2008, 20h06   #13
Membre éprouvé
 
Inscription : août 2007
Messages : 494
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations forums :
Inscription : août 2007
Messages : 494
Points : 447
Points : 447
Et bien tu as raison defcon_suny tous fonctionne, encore merci et en plus c'est bien plus clair que ce que j'ai fait au départ mais bon je débute le php et c'est pas toujours facile.

__________________


Avant de poster faites une recherche et/ou consultez la FAQ.

Un sujet est résolu n'oubliez pas le tag
kilian67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h05.


 
 
 
 
Partenaires

Hébergement Web