Bonjour,
actuellement je développe le site web à un copain qui est artiste ainsi l'on pourra uploader des images et vidéos d'artistes. Jusque là tout se passait pour le mieux mais je suis confronté à un problème, dans mon formulaire d'upload il existe deux champs input files et lorsque je valide le formulaire, c'est seulement l'image qui est transférée dans le dossier de destination mais dans la base de données le lien de l'image et de la vidéo y sont. je vous présente le code source de mon formulaire ainsi que le script php d'upload.
Formulaire:
Code HTML : 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="upload_mp3.php" method="post" class="one" enctype="multipart/form-data"> <p class="member">Enregistrement audio</p> <label for="artiste">Artiste :</label> <input name="artiste" type="text" class="txtfield"/> <label for="titre">Titre :</label> <input name="titre" type="text" class="txtfield"/> <label for="temp">Durée :</label> <input name="temp" type="text" class="txtfield"/> <label for="mixage">Mixage :</label> <input name="mixage" type="text" class="txtfield"/> <label for="image"> Image: </label> <input type="file" id="file" name="image" /> <input type="hidden" name="MAX_FILE_SIZE" value="200000" /> <label for="file"> MP3: </label> <input type="file" id="file" name="file" /> <input type="hidden" name="MAX_FILE_SIZE" value="8000000" /> <br> <br><div align="center"><input type="submit" name="envoyer" value="Valider"></div> <div class="clear"></div> </form>
Le script d'upload:
NB: Wampserver version 2.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
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 <?php include "config.php"; ?> <?php // ***** ici on récupère les données et on les stocke dans mysql $artiste = $_POST['artiste']; $titre = $_POST['titre']; $temp = $_POST['temp']; $mixage = $_POST['mixage']; if (empty($artiste)) { echo 'Vous devez indiquer le nom de l artiste'; exit(); } if (empty($titre)) { echo 'Vous devez indiquez un titre'; exit(); } if (empty($temp)) { echo 'Vous devez inquer le temps'; exit(); } if (empty($mixage)) { echo 'Vous devez indiquer le nom de l arrangeur '; exit(); } //******* On renomme l'image de manière aléatoire pour éviter un conflit dans le dossier (2 fois le même nom par exemple $dir = 'upload/'; $ext = strtolower( pathinfo($_FILES['image']['name'], PATHINFO_EXTENSION) ); $file=uniqid().'.'.$ext; //**** on bouge l'image move_uploaded_file($_FILES['image']['tmp_name'], $dir.$file); $image = $file; //******* On renomme le fichier mp3 de manière aléatoire pour éviter un conflit dans le dossier (2 fois le même nom par exemple $dir = 'upload/'; $ext = strtolower( pathinfo($_FILES['file']['name'], PATHINFO_EXTENSION) ); $file=uniqid().'.'.$ext; //**** on bouge l'image move_uploaded_file($_FILES['file']['tmp_name'], $dir.$file); $file = $file; // on enregistre les données $result = mysql_query("INSERT INTO musique VALUES ( '', '".mysql_real_escape_string($artiste)."', '".mysql_real_escape_string($titre)."', '".mysql_real_escape_string($temp)."', '".mysql_real_escape_string($mixage)."', '".mysql_real_escape_string($image)."', '".mysql_real_escape_string($file)."' ) "); mysql_close($db); // on ferme la connexion header('location: musiques.php'); ?>
PHP Version 5.3.13
MySQL version 5.5.24
je débute en php alors je demande votre indulgence.
Partager