bonsoir à tous,
après moultes recherches infructueuses, je finis par vous demander comment on peut récupérer le titre de l'image uploadée, sachant que tout va bien pour l'upload en lui-même.
La difficulté pour moi est que, lorsque j'upload, j'ai le chemin absolu qui s'affiche dans le champ de récupération. Normal me direz-vous mais très ennuyeux car il faut que je récupère uniquement la fin du chemin absolu, c'est-à-dire uniquement : image.jpg
Pour vous éclairer, voici mon code simplifié du formulaire de chargement :
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 <form method="post" action="chargement_photo.php" enctype="multipart/form-data"> <table> <tr> <td> <input type="hidden" name="MAX_FILE_SIZE" value="1000000000" /> <input type="file" name="mon_image" size="70" id="mon_image" /> </td> </tr> <tr> <td> <input type="submit" name="submit" value="Envoyer" /> </td> </tr> <tr> <td height="35%" bgcolor=#000000></td> </tr> </table> </form>
voici le code simplifié de mon fichier php :
voilà où j'en suis... ça fonctionne très bien...
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 <?php $dossier = 'photos/'; $fichier = basename($_FILES['mon_image']['name']); $taille_maxi = 1000000000; $taille = filesize($_FILES['mon_image']['tmp_name']); $extensions = array('.png', '.gif', '.jpg', '.jpeg', '.JPG'); $extension = strrchr($_FILES['mon_image']['name'], '.'); //connexion à la base mysql club et message si probleme $connexion=mysql_connect ('localhost','root','') or die ("impossible de se connecter à la base de données"); mysql_select_db ('phototheque'); //Début des vérifications de sécurité... if(!in_array($extension, $extensions)) { $erreur = "...fichier de type png, gif, jpg, jpeg, JPG"; } if($taille>$taille_maxi) { $erreur = "le fichier est trop gros..."; } //On formate le nom du fichier $fichier = strtr($fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier); // a ce stade $fichier devrait exactement correspondre au nom sur le disque if (file_exists ($dossier . $fichier)) { $erreur = "gardez si possible le même nom en..."; } if(!isset($erreur)) { if(move_uploaded_file($_FILES['mon_image']['tmp_name'], $dossier . $fichier)) { echo "chargement réussi !!!"; } else { echo "ehec du chargement\n"; } } else echo $erreur; //fermeture de la connection mysql_close($connexion); ?>
mais, pour la récupération du nom de l'image uploadée (et non celui de l'image donné par le photographe), je vois vraiment pas.
quelqu'un aurait-il une piste, un tutoriel à me conseiller ?
merci d'avance...
(et probablement à demain matin)
Partager