Bonjour a tous !
Je vous remercie par avance de votre aide,
Je suis confronte a un problème de lecture de contenu de dossier.
Je vais commencer par vous décrire mon script.
Je dois effectuer une lecture du contenu (des images) puis les afficher dans un tableau.
donc je fais un chdir, suivi d'un opendir. Avec une boucle de readdir, j'obtiens mon contenu.
A cela j'ajoute un formulaire (radio en dessous de chaque image) qui me détermine quelle est la photo principale.
Pour changer la photo principale, je swap les noms de fichiers.
Photo principale => "temp.jpg"
photo voulue => "1.jpg"
"temp.jpg" => variable contenant le nom de la photo voulue
seulement voila, lorsque je valide mon formulaire, le changement s'effectue bien. Les photos se sont bien interverties mais pas sur le site.
Les valeurs sont bonnes mais les images ne sont pas dans le bon ordre (abc..).
Pour corriger l'affichage je suis obligé de bourriner F5.
Donc comme le navigateur me demande de recharger la page en renvoyant le formulaire, je suis obligé de sortir de la page puis de revenir et de bourriner.
Je me demande donc si j'ai un problème avec mon readdir que peu être je ne fais pas au bon endroit ou le navigateur dans ce cas, il me faudrait du javascript ?
Merci pour votre aide ..
Voici le script: (je sais c'est sale et pas sécurisé mais je ferai après quand ça marchera ! Pour le moment j'ai pas le temps ..)
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 chdir("../photos/" . $_GET['ref']); $ressource = opendir("./"); if(!$ressource) echo("Echec du opendir<br />"); if(isset($_POST['photo_erase'])) { $nb = count($_POST['supprimer']); for($i = 0; $i <= $nb - 1; $i++) unlink($_POST['supprimer'][$i]); } if(isset($_POST['replace'])) { if($_POST['principal'] != "1.jpg") { rename("1.jpg", "temp.jpg"); rename($_POST['principal'], "1.jpg"); rename("temp.jpg", $_POST['principal']); } } echo("<form action='./admin.php?page_admin=photos&ref=" . $_GET['ref'] . "' method='post'><table><tr>"); $i = 0; while (false !== ($entry = readdir($ressource))) { if ($entry != "." && $entry != "..") { if($i == 4) { echo("</tr><tr>"); $i = 0; } echo("<td>"); echo('<a target="_blank" href="../photos/' . $_GET['ref'] . "/" . $entry . '">'); echo('<img width="220" height="150" src="../photos/' . $_GET['ref'] . "/" . $entry . '"/>'); echo('</a><br />'); echo('<input type="checkbox" name="supprimer[]" value="' . $entry . '">'); if($entry == "1.jpg") echo('<input type="radio" name="principal" value="' . $entry . '" checked/>'); else echo('<input type="radio" name="principal" value="' . $entry . '" />'); echo("</td>"); $i++; } } echo("</tr><tr><td colspan='4'><input type='submit' value='Supprimer' id='photo_erase' name='photo_erase' /></td></tr>"); echo("<tr><td colspan='4'><input type='submit' value='Set principale' name='replace' id='replace' onclick='recharge()' /></td></tr>"); echo("</table></form>"); closedir($ressource);
Partager