Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
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 11/07/2007, 16h42   #1
Invité de passage
 
Inscription : juillet 2007
Messages : 2
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 2
Points : 0
Points : 0
Par défaut Script contenu répertoire, sous-répertoires et vignettes

Bonjour,

je m'adresse à vous car j'aurai besoin de votre aide m'y connaissant pas du tout en php.

J'ai récupéré un script qui fonctionne très bien à condition que les images obligatoirement au format jpg soient placés tous dans le même répertoire.

Si quelqu'un pourrait m'aider à le modifier de tel façon à ce que lors du lancement de celui-ci, il liste les fichiers contenus dans par ex.: le répertoire "images" et dans ses sous-répertoires. S'il détecte une image au format ".gif;bmp,jpeg,png", il créé les vignettes et ensuite les intègres dans une page html.
En vous remerciant par avance,

Voici le code récupéré :

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
<?php
 
$rep = opendir( "images" );
$images = array( );
while( $fnom = readdir( $rep ) )
 
{
if ( preg_match( "/[.]JPG$/", $fnom ) )
$images []= $fnom;
}
closedir( $rep );
foreach( $images as $fnom )
{
$im = imagecreatefromjpeg( "images/$fnom" );
$ox = imagesx( $im );$oy = imagesy( $im );
$nx = 100;
$ny = floor( $oy * ( 100 / $ox ) );
$nm = imagecreatetruecolor( $nx, $ny );
imagecopyresized( $nm, $im, 0, 0, 0, 0, $nx, $ny, $ox, $oy );
print "Création de la vignette de $fnom\n";
imagejpeg( $nm, "vignettes/$fnom" );
}
print "Création du fichier index.html\n";
ob_start( );
?>
 
<html>
<head><title>Vignettes</title></head>
<body>
<table cellspacing="0" cellpadding="2" width="500">
<tr>
<?php
$index = 0;
foreach( $images as $fnom ) {
?>
<td valign="middle" align="center">
<a href="images/<?php echo( $fnom ); ?>"><img src="vignettes/<?php echo($fnom ); ?>" border="0" /></a>
</td>
<?php
$index += 1;
if ( $index % 5 == 0 ) { echo( "</tr><tr>" ); }
}
?>
</tr>
</table>
</body>
</html>
<?php
$html = ob_get_clean( );
$fh = fopen( "index.html", "w" );
fwrite( $fh, $html );
fclose( $fh );
?>
cqtn67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/07/2007, 17h08   #2
Fabouney
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
Bonsoir,

Désolé mais j'ai pas le temp de modifier ton script pour faire ce que tu demande, ca se fait pas en 2 minutes.
Mais fait le tour de la FAQ PHP etc pour lire une arborescence récursivement, il y a des exemple simple.
L'idée c'est de créer une fonction va lister les fichiers/repertoires d'un répertoire Root, si c'est un fichier tu check son extension et donc tu en déduis si c'est une image ou non si oui, tu créer la miniature attention à l'appel de la fonction "createimagefromxxx" si tu utilise la librairie GD.

Code :
$funcimg = "createimagefrom$ext"
par contre si c'est un répertoire alors tu rappel la fonction dans laquelle tu te trouves en lui passant en paramettre le répertoire courant.
C'est pas compliqué comme script, va faire un tour dans la FAQ tu trouveras vite des exemples.

Mais je te conseil d'essayer par toi meme plutot que d'aller chercher des script à droite à gauche qui n'ont, excuse moi, mais pas l'air fameux fameux lol.

Cordialement.
  Envoyer un message privé Réponse avec citation 00
Vieux 12/07/2007, 17h13   #3
Invité de passage
 
Inscription : juillet 2007
Messages : 2
Détails du profil
Informations forums :
Inscription : juillet 2007
Messages : 2
Points : 0
Points : 0
Merci pour votre réponse.

J'ai recherché dans la FAQ et dans les différents tutoriaux.

J'ai trouvé le script pour lire une arborescence récursivement, mais comme je disais, je m'y connais alors pas du tout en php.

Je ne vois pas comme intégré ce script dans l'autre.

Si quelqu'un pourrait m'aider avec mes remerciements
cqtn67 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h46.


 
 
 
 
Partenaires

Hébergement Web