afficher toutes les images d un dossier en php

Ce forum aborde toutes les questions qu'un codeur ou webmaster pourrait se poser, et n'ayant aucun rapport direct avec phpBB.
Tout ce qui peut concerner la récupération des sessions de phpBB sur votre site, doit se faire dans cette section.

Modérateur: Equipe

Règles du forum
A lire impérativement : Règlement de phpBB-fr.com
Partager sur FacebookPartager sur TwitterPartager sur Google+

afficher toutes les images d un dossier en php

Messagepar dominos_billard » 17 Mar 2006 à 16:26

Salut.

Pourriez vous m aider pour creer un script en php pour afficher des dessins de personnes atteintes de défiscience intellectuelles dans le cadre de la semaine qui leur est consacré.
Le script devra toutes les images d un dossier. Les images sont numerotés de yyy001 a yyyxxx. Je voudrais les afficher dans un tableau de 4 images par lignes et par colone. Les autres images du dossier seront affichés dans d autres pages sur le meme principe des 20 messages par page pour le forum phpbb.
je possede plusieurs images dans des dossiers différents, donc le script devra etre facilement adaptable pour afficher les images d autres dossiers.

Merci a vous.

J espere que j ai été assez clair :wink:
dominos_billard
Posteur néophyte
Posteur néophyte
 
Messages: 55
Enregistré le: 11 Aoû 2004 à 09:38

Messagepar spitfire pat » 17 Mar 2006 à 18:17

est-ce que le répertoire ne contiendrait que des images, où bien on est obligé de suivre une numérotation ?
et d'autre part, c'est pour un forum phpbb ?
Avatar de l’utilisateur
spitfire pat
MOD Contest Winner
MOD Contest Winner
 
Messages: 15297
Enregistré le: 18 Sep 2004 à 16:43
Localisation: bourgogne

Messagepar dominos_billard » 17 Mar 2006 à 19:52

spotofre pat , merci de ta réponse.

Le répertoire contiendra que des images. J'ai numeroté les images pour rendre le script plus facile à réaliser, si ce n'est pas le cas on est pas obliger de suivre une numérotation, mais il faut que la page générée soit la meme à chaque fois pour povoir retrouver les images facilemnts.

Ce n'est pas pour un forum phpbb.

a+ je suis a votre disposition pour d'autres questions
dominos_billard
Posteur néophyte
Posteur néophyte
 
Messages: 55
Enregistré le: 11 Aoû 2004 à 09:38

Messagepar spitfire pat » 17 Mar 2006 à 22:28

voilà une ébauche de ce que ça pourrait être
je ne me suis pas préoccupé de fioritures, donc la mise en page et le graphisme seront à revoir
le script s'appelle show_dir.php et est à appeler ainsi:
show_dir.php?path=images
Code: Tout sélectionner
<?php
error_reporting  (E_ERROR |E_WARNING | E_PARSE);
$nb_cols = 4;
$nb_rows = 4;

$per_page = $nb_cols * $nb_rows;
$path = $_GET['path'];
$start = isset($_GET['start']) ? intval($_GET['start']) : 0;
if (empty($path))
{
	die('Pas de répertoire indiqué');
}
if (substr($path, -1) != '/')
{
	$path .= '/';
}
$img_list = array();
$i = 0;
if (!$dir = opendir($path))
{
	die("impossible d'ouvrir le répertoire $path");
}
while( $file = readdir($dir) )
{
	if( preg_match('/(\.gif$|\.png$|\.jpg|\.jpeg)$/is', $file) )
	{
		$img_list[] = $file;
	}
}
sort($img_list);
reset($img_list);
$num_items = count($img_list);
$total_pages = ceil($num_items/$per_page);
$on_page = floor($start / $per_page) + 1;
$base_url = "show_dir.php?path=$path&start=";
$prev_url = ($on_page > 1) ? '<a href="' . $base_url . ( ( $on_page - 2 ) * $per_page )  . '">Précédente</a>&nbsp;&nbsp;' : '';
$next_url = ($on_page < $total_pages) ? '<a href="' . $base_url . ( $on_page * $per_page )  . '">Suivante</a>' : '';

?>
<html>
<head>
	<title>
	<?php echo 'Images de ' . $path . ' :: Page ' . $on_page; ?>
	</title>
</head>
<body>
<table width="100%">
	<tr>
		<th><?php echo 'Images de ' . $path ; ?></th>
	</tr>
	<tr>
		<td><b>Page <?php echo $on_page; ?> sur <?php echo $total_pages; ?></b></td>
		<td align="right"><?php echo $prev_url.$next_url; ?></td>
	</tr>
	<tr>
		<td colspan="2">
			<table width="100%">
<?php
for($i=0;$i<$nb_rows;$i++)
{
	echo '<tr>';
	for($j=0;$j<$nb_cols;$j++)
	{
		$pos=$start + 4*$i +$j;
		$img_url = ($img_list[$pos]) ? '<img src="' . $path . $img_list[$pos] . '">' : '&nbsp;';
		echo '<td>' . $img_url . '</td>';
	}
	echo '</tr>';
}
?>
			</table>
		</td>
	</tr>
	<tr>
		<td><b>Page <?php echo $on_page; ?> sur <?php echo $total_pages; ?></b></td>
		<td align="right"><?php echo $prev_url.$next_url; ?></td>
	</tr>

</table>
</body>
</html>
Avatar de l’utilisateur
spitfire pat
MOD Contest Winner
MOD Contest Winner
 
Messages: 15297
Enregistré le: 18 Sep 2004 à 16:43
Localisation: bourgogne

Messagepar dominos_billard » 18 Mar 2006 à 03:18

Merci pour cette ébauche!

J'ai essayer de tester mais ca me donne : Pas de répertoire indiqué.
J'ai placé le show_dir.php dans un repertoire contenant des images et je l'ai appelé sur le navigateur.

Pour le design, on affichera les images sur un fond blanc avec un tableau dont les bordures sont invisibles, les images doivente etre centré.

Merci encore pour ton aide et tes réponses rapides. :wink:
dominos_billard
Posteur néophyte
Posteur néophyte
 
Messages: 55
Enregistré le: 11 Aoû 2004 à 09:38

Messagepar spitfire pat » 18 Mar 2006 à 07:15

dominos_billard a écrit:
J'ai essayer de tester mais ca me donne : Pas de répertoire indiqué.

je t'ai bien dit que ça se lançait avec show_dir.php?path=nom_du_repertoire
si tu as mis le script dans le même répertoire que les images alors ça sera show_dir.php?path=/
Avatar de l’utilisateur
spitfire pat
MOD Contest Winner
MOD Contest Winner
 
Messages: 15297
Enregistré le: 18 Sep 2004 à 16:43
Localisation: bourgogne

Messagepar dominos_billard » 19 Mar 2006 à 02:41

Merci énormement.

Ca va faire des heureux!
dominos_billard
Posteur néophyte
Posteur néophyte
 
Messages: 55
Enregistré le: 11 Aoû 2004 à 09:38


Retourner vers Coding, Webmastering et Sécurité informatique

 


  • Articles en relation
    Réponses
    Vues
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité