Bonjour,
tout d'abord, je tiens à préciser que je suis débutant en PHP, donc, prenez patience .
Alors voilà, je souhaite faire un script qui affichent les photos d'un dossier. Avant ça, le visiteur choisira les photos à voir en fonction de l'année et la série choisie.
Voici le code que j'ai écrit (pas parfait certes, mais je m'essaie au php je le rappelle...)
Ce script marche parfaitement pour les utilisateurs Linux (qui sont donc sous FireFox / Mozilla), par contre, un pb se posent pour les utilisateurs d'internet explorer : le tableau s'affiche mais pas les photos (ni meme le lien vers ces photos).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133 <h1>Les photos du club</h1> <br /> <? // Déclaration des variables // ------------------------- // Tableau qui contient la liste des fichiers $files = array(); ?> <? // Cas où l'année n'est pas encore choisie // ---------------------------------------- if (!isset($_GET['annee'])) { echo "Veuillez choisir l'année qui vous intéresse.<br /><br />"; // On ouvre le dossier $handle = opendir("images/club"); // On parcourt les noms d'années while ($file = readdir($handle)) { if($file != "." && $file != "..") { $files[] = $file; } } // On referme le dossier closedir($handle); // On trie le tableau sort($files); // On affiche alors les dossiers $bg = '#dddddd'; echo "<table align='center' cellspacing='4' cellpadding='4'>"; foreach($files as $v) { echo "<tr bgcolor=$bg> <td> <a href='index.php?page=photos_club.php&annee=".rawurlencode($v)."'>< $v ></a> </td> </tr>"; if ($bg == '#dddddd') $bg = '#ffffff'; else $bg = '#dddddd'; } echo "</table>"; } // Cas où la série n'est pas encore choisie // ----------------------------------------- else if (!isset($_GET['serie'])) { echo "Veuillez choisir la série qui vous intéresse.<br /><br />"; // On ouvre le dossier $handle = opendir("images/club/$_GET[annee]"); // On parcourt les noms d'années while ($file = readdir($handle)) { if($file != "." && $file != "..") { $files[] = $file; } } // On referme le dossier closedir($handle); // On trie le tableau sort($files); // On affiche alors les dossiers $bg = '#dddddd'; echo "<table align='center' cellspacing='4' cellpadding='4'>"; foreach($files as $v) { echo "<tr bgcolor=$bg> <td> <a href=\"index.php?page=photos_club.php&annee=".rawurlencode($_GET['annee'])."&serie=".rawurlencode($v)."\">>> $v</a> </td> </tr>"; if ($bg == '#dddddd') $bg = '#ffffff'; else $bg = '#dddddd'; } echo "</table>"; echo "<br /><br />"; // On met le lien de retour en arrière echo "<div align='center'>"; echo "<a href='index.php?page=photos_club.php'>Retour</a>"; echo "</div>"; } // Cas où l'on affiche les photos // ------------------------------ else { echo "<div align='center'>", $_GET['serie'], "</div>"; echo "<br /><br />"; // Variable qui permet de construire le tableau de N photo de large $nbrePhoto = 0; $N= 3; // On ouvre le dossier $handle = opendir("images/club/$_GET[annee]/$_GET[serie]"); // On parcourt les noms d'années while ($file = readdir($handle)) { if($file != "." && $file != ".." && $file != "Thumbs.db") { $files[] = $file; } } // On referme le dossier closedir($handle); // On trie le tableau sort($files); // On crée le tableau echo "<table align='center' cellspacing='2' cellpadding='2' border ='1' bordercolor='#dddddd'>"; foreach($files as $v) { // Nouvelle ligne if ($nbrePhoto == 0) { echo "<tr>"; } // On affiche la photo echo "<td><div align='center'><a href=\"images/club/".rawurlencode($_GET['annee'])."/".rawurlencode($_GET['serie'])."/".rawurlencode($v)."\" target='_blank'> <img src=\"images/club/".rawurlencode($_GET['annee'])."/".rawurlencode($_GET['serie'])."/".rawurlencode($v)."\" width='50%' height='50%' border='0'></a></div></td>"; $nbrePhoto = $nbrePhoto + 1; if ($nbrePhoto == $N) { echo "</tr>"; $nbrePhoto = 0; } } if ($nbrePhoto != 0) { echo "</tr>"; } // On referme le tableau echo "</table>"; echo "<br /><br />"; // On met le lien de retour en arrière echo "<div align='center'>"; echo "<a href='index.php?page=photos_club.php&annee=".rawurlencode($_GET['annee'])."'>Retour</a>"; echo "</div>"; } ?>
Voilà j'espère avoir été assez clair dans la description de mon problème et que vous pourrez m'aider.
Merci d'avance
Partager