uploader les image qui ont un nom avec des guillemets

Eléphant du PHP | 127 Messages

12 juil. 2006, 13:30

Bonjour a tous, voila j'ai un probleme pour uploader les image qui ont un nom qui contient des guillemets ou des apostrophes.
En effet si l'image en contient j'ai une erreur.
J'ai essayé la fonction addslashes mais ca n'a pas l'aire de marcher.
Merci.

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

12 juil. 2006, 14:10

Est-ce qu'il est possible de voir le code qui te sert à uploder le fichier ainsi que ce qui te fait dire que ça ne marche pas : message d'erreur, plantage, rien ne se passe
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Eléphant du PHP | 127 Messages

12 juil. 2006, 16:53

avec un addslashes j'ai l'erreur suivante:

Code : Tout sélectionner

Erreur de syntaxe près de 'eponge.jpg','2006-07-12-16-50-43','fanny.jpg','peace.jpg','rome' à la ligne 1
A la base la premiere image s'appelle bob l'eponge!
cette fonction devrait marcher normalement ou c'est normale?
J'ai la même erreur sans addslashes. :(

Eléphant du PHP | 127 Messages

12 juil. 2006, 17:18

Voila le code sans les addslashes, je n'ai pas écrit les vérifications:
$dest_fichier = basename($_FILES['photo']['name']);
$dest_fichier = strtr($dest_fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ &', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy__');
$dest_fichier = preg_replace('/-([^.a-z0-9]+)/i', '_', $dest_fichier);
$copie=move_uploaded_file($_FILES['photo']['tmp_name'], $dest_dossier . $dest_fichier);
Merci :D

Invité
Invité n'ayant pas de compte PHPfrance

16 juil. 2006, 14:32

C'est quoi votre solution à vous pour uploader ou interdir d'uploader des images qui ont des guillemets ou des apostrophes dans leur nom?

Mammouth du PHP | 19672 Messages

16 juil. 2006, 15:23

il n'y a qu'une seule solution: renommer tes fichiers et oublier les permissions laxistes à la Windows pour nommer tes fichiers pour la simple raison que les serveur de productions sont le plus souvent sous Linux et ne tolèrent pas ces fantaisies.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 127 Messages

16 juil. 2006, 16:21

Tu veux dire que je devrai renomer les images qu'on uploade sur mon serveur?
Si c'est le cas peux-tu m'éclairer sur la façon de procéder afin que chaques images aient un nom different?
Merci.

Eléphant du PHP | 127 Messages

16 juil. 2006, 17:26

c'est bon merci j'ai trouvé :D .
En effet je pense que renommer les images est la meilleur chose à faire.

Mammouth du PHP | 19672 Messages

16 juil. 2006, 20:01

[Résolu] :?:
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 127 Messages

16 juil. 2006, 21:41

oui tout à fait :D