Bonjour
J'ai un formulaire permettant d'ajouter des photos, qui fonctionne en plusieurs étapes :
- page 1 : on choisit l'album concerné et le nombre de photos à uploader
- page 2 : le nombre de champs d'upload correspondant s'affiche
- page 3 : on ajoute les photos sur le FTP et leur url dans la BDD
La page 1 :
La page 2 :
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 <form action="ajouter_photos2.php" method="post" enctype="multipart/form-data"> <label> Album : <select name="id_chat"> <? $req = mysql_query("SELECT * from chats Order by nom") or die ("Erreur requête"); $res = mysql_num_rows($req); $i=0; while($res!=$i) { $id = mysql_result($req,$i,"id"); $nom = mysql_result($req,$i,"nom"); ?> <option value="<? echo $id; ?>"><? echo $nom; ?></option> <?php $i++; } ?> </select></label><br /><br /> <label>Nombre de photos : <input type="text" name="nombre" size="2" maxlength="2"></label><br /><br /> <input class="bouton2" type="submit" name="valider" value="Valider"> </form>
La page 3 :
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 <?php $id_chat = $_POST['id_chat']; $nombre = $_POST['nombre']; ?> <form action="ajouter_photos3.php" method="post" enctype="multipart/form-data"> <? $i=0; while($nombre!=$i) { $nb = $i+1; ?> <label>Photo n° <? echo $nb; ?> : <input type="file" name="image_<? echo $nb; ?>"></label><br><br> <?php $i++; } ?> <input type="hidden" name="nombre" value="<? echo $nombre; ?>"> <input type="hidden" name="id_chat" value="<? echo $id_chat; ?>"> <input class="bouton2" type="submit" name="valider" value="Valider"> </form>
Le souci, c'est que je ne vois pas comment faire en sorte que le script puisse traiter les champs "image_1", "image_2" et pas juste un champ "image" comme dans mon script actuel.
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 <?php $id_chat = $_POST['id_chat']; $nombre = $_POST['nombre']; $i=0; while($nombre!=$i) { $nb = $i+1; $timestamp = time(); $url = $nb.'_'.$timestamp; $dossier = 'photos/'; $fichier = basename($_FILES['image']['name']); $extensions = array('.png', '.gif', '.jpg', '.jpeg', '.JPG', '.JPEG'); $extension = strrchr($_FILES['image']['name'], '.'); //Début des vérifications de sécurité... if(!in_array($extension, $extensions)) { $erreur = 'Vous devez uploader un fichier de type PNG, GIF, JPG ou JPEG !'; } if(!isset($erreur)) { $fichier = $url; $fichier .= $extension; if(move_uploaded_file($_FILES['image']['tmp_name'], $dossier . $fichier)) { echo "C'est bon pour : $fichier<br />"; mysql_query("INSERT Into photos VALUES ('','$id_chat','$url')") or die ("Erreur requête !"); } else { echo 'Echec de l\'upload !'; } } else { echo $erreur; } $i++; } ?>
En gros, comment combiner "image" et "_$nb" dans ce cas...
Question sans doute très bête, j'en conviens !
Merci pour votre aide.
Partager