Transfert d'une image via un form html
Fermé
Mickael86480
Messages postés
660
Date d'inscription
vendredi 28 mai 2010
Statut
Membre
Dernière intervention
11 mars 2021
-
30 août 2016 à 12:48
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 5 sept. 2016 à 09:50
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 5 sept. 2016 à 09:50
A voir également:
- Transfert d'une image via un form html
- We transfert - Guide
- Image iso - Guide
- Editeur html - Télécharger - HTML
- Légender une image - Guide
- Partager des photos via un lien - Guide
2 réponses
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
526
30 août 2016 à 17:35
30 août 2016 à 17:35
Salut,
Tu as une coquille à la ligne 23 :
au lieu de :
Bonne journée,
Tu as une coquille à la ligne 23 :
if ((isset($_FILES['nom_du_fichier']['temp_name']) ...
au lieu de :
if ((isset($_FILES['nom_du_fichier']['tmp_name']) ...
Bonne journée,
Mickael86480
Messages postés
660
Date d'inscription
vendredi 28 mai 2010
Statut
Membre
Dernière intervention
11 mars 2021
35
31 août 2016 à 16:43
31 août 2016 à 16:43
Maintenant le soucis que je rencontre c'est que je n'ai plus d'extension ou plutôt je voudrais y modifier l'extension et y mettre .jpg afin que je ne sois pas surpris du format que je reçois, j'ai bien essayé ça mais ça ne fonctionne pas. J'ai besoin d'un regard extérieur :
//Créer un identifiant difficile à deviner
$nom=uniqid(rand()+'.jpg');
$nom = md5($nom, true);
$chemin_destination = 'C:/wamp/www/recette/dossiers_utilisateurs/images_recettes/'.$pseudo.'/';
$_FILES['nom_du_fichier']['name']=$nom;
move_uploaded_file($_FILES['nom_du_fichier']['tmp_name'], $chemin_destination.$_FILES['nom_du_fichier']['name']);
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
526
31 août 2016 à 17:04
31 août 2016 à 17:04
$nom = md5(uniqid(rand()), true) . '.jpg';
Es tu sûr de ne recevoir que des images au formats jpg ? Dans le cas d'une image au format png ou gif par exemple, ce changement d'extension en dur risque de poser problème.
Mickael86480
Messages postés
660
Date d'inscription
vendredi 28 mai 2010
Statut
Membre
Dernière intervention
11 mars 2021
35
31 août 2016 à 17:23
31 août 2016 à 17:23
ah d'accord comment dois-je faire alors stp?
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
526
Modifié par Pitet le 31/08/2016 à 17:30
Modifié par Pitet le 31/08/2016 à 17:30
Une solution possible est de récupérer l'extension du fichier uploadé :
$ext = pathinfo($_FILES['nom_du_fichier']['tmp_name'], PATHINFO_EXTENSION); $nom = md5(uniqid(rand()), true) . '.' . $ext;
Mickael86480
Messages postés
660
Date d'inscription
vendredi 28 mai 2010
Statut
Membre
Dernière intervention
11 mars 2021
35
>
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
31 août 2016 à 20:15
31 août 2016 à 20:15
D'accord si je comprends bien ton code :
$ext prend pour valeur, l'extension du fichier uploadé.
$nom prend pour valeur un nom inventé avec l'extension du fichier uploadé
est-ce bien ça?
$ext = pathinfo($_FILES['nom_du_fichier']['tmp_name'], PATHINFO_EXTENSION);
$ext prend pour valeur, l'extension du fichier uploadé.
$nom = md5(uniqid(rand()), true) . '.' . $ext;
$nom prend pour valeur un nom inventé avec l'extension du fichier uploadé
est-ce bien ça?
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
526
1 sept. 2016 à 09:04
1 sept. 2016 à 09:04
C'est bien ça. N'hésite pas à afficher les valeurs des variables via echo ou var_dump() pour comprendre le code ;)
30 août 2016 à 21:10
les dossiers sont créés mais je n'ai pas la photo dedans. En revanche, j'ai deux avertissements :
Warning: move_uploaded_file(wamp/www/recette/dossiers_utilisateurs/images_recettes/P1010001.JPG) [function.move-uploaded-file]: failed to open stream: No such file or directory in C:\wamp\www\recette\essai.php on line 37
Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\wamp\tmp\php3338.tmp' to 'wamp/www/recette/dossiers_utilisateurs/images_recettes/P1010001.JPG' in C:\wamp\www\recette\essai.php on line 37
je ne comprends pas merci de m'aider.
Modifié par Pitet le 31/08/2016 à 09:32
31 août 2016 à 11:05
Dernière remarque, j'ai un autre avertissement qui me le dossier que je veux créer existe déjà, il faut que je test, penses-tu que cela peut suffir :
31 août 2016 à 11:28
31 août 2016 à 11:33