IIS envoie de fichier avec accent sous php
Sébas
-
Sébas -
Sébas -
Bonjour,
J'ai un problème étrange. Nous avons déplacé un site web(Mediawiki) du serveur linux vers windows 2003.
Ce site est en php. Le problème est lors de l'envoi de fichier avec accent, php le sauvegarde avec de caractère UTF-8. Exemple: léquipe.png devient léquipe.png.
Sous linux, si je veux voir le fichier on entre http://lesite/l%C3%A9quipe.png et tous fonctionnent. Mais sous Windows pour que ça fonctionne, je dois remplacer é par é.
comment faire pour que IIS interprète %C3%A9 comme é??
pour reproduire l'érreur, utiliser ce code.
PS: le site dois rester avec le charser=utf-8
J'ai un problème étrange. Nous avons déplacé un site web(Mediawiki) du serveur linux vers windows 2003.
Ce site est en php. Le problème est lors de l'envoi de fichier avec accent, php le sauvegarde avec de caractère UTF-8. Exemple: léquipe.png devient léquipe.png.
Sous linux, si je veux voir le fichier on entre http://lesite/l%C3%A9quipe.png et tous fonctionnent. Mais sous Windows pour que ça fonctionne, je dois remplacer é par é.
comment faire pour que IIS interprète %C3%A9 comme é??
pour reproduire l'érreur, utiliser ce code.
PS: le site dois rester avec le charser=utf-8
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<form method="POST" action="" enctype="multipart/form-data">
<!-- Le contenu du formulaire est à placer ici... -->
<input type="file" name="avatar">
<input type="hidden" name="MAX_FILE_SIZE" value="100000000000000000">
<input type="submit" value="1234" />
</form>
<?php
if(isset($_FILES['avatar']))
{
$dossier = 'test/';
$fichier = basename($_FILES['avatar']['name']);
if(move_uploaded_file($_FILES['avatar']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
echo 'Upload effectué avec succès ! <a href="test/'.rawurlencode($fichier).'">test</a>';
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec de l\'upload !';
}
}
?>
</body>
</html>
A voir également:
- IIS envoie de fichier avec accent sous php
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
3 réponses
Hello Sébas,
Je ne voudrait pas être enm..dant... Mais es bien raisonnable d'utiliser des accents dans les noms de page et d'images... ?
Je crois bien que tu risque de multiplier les comportements bizarres parce que les navigateurs ne seront jamais tous d'accord...
https://forum.alsacreations.com/topic-2-25249-1-Accents-dans-les-URL-qui-a-raison-.html
Sur nos sites, nous n'en utilisons jamais pour les url...
Tu pourrais trouver un petit script pour transformer tous les accents de tes fichiers ?
Nous, on a même utiliser un codage dans le php pour ne pas mettre d'accent dans le code. Ce qui nous permet d'avoir une grande maitrise de l'encodage.
Je ne voudrait pas être enm..dant... Mais es bien raisonnable d'utiliser des accents dans les noms de page et d'images... ?
Je crois bien que tu risque de multiplier les comportements bizarres parce que les navigateurs ne seront jamais tous d'accord...
https://forum.alsacreations.com/topic-2-25249-1-Accents-dans-les-URL-qui-a-raison-.html
Sur nos sites, nous n'en utilisons jamais pour les url...
Tu pourrais trouver un petit script pour transformer tous les accents de tes fichiers ?
Nous, on a même utiliser un codage dans le php pour ne pas mettre d'accent dans le code. Ce qui nous permet d'avoir une grande maitrise de l'encodage.