charset=UTF-8 ou charset=ISO-8859-1 ?

Petit nouveau ! | 9 Messages

15 janv. 2014, 22:44

J'ai un formulaire de contact, une fois rempli et envoyé je reçois une copie avec les donnés entrés dans le formulaire . Dans la copie j'explique certaines choses, le texte a des caractères spéciaux. Certaines fois dans la copie il y a des problèmes de codage, je pense que ça dépend du navigateur de l'utilisateur qui rempli le formulaire, parce que si c'est moi qui le rempli je n'ai pas de problème de codage.

A votre avis qu'est-ce que dois-je employer comme charset pour éviter les problèmes de codage?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

ou

<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
</head>
<body>
<?php
bla bla bla
?>
</body>

Merci.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

15 janv. 2014, 22:47

salut,

c'est à toi de définir ton charset et ceci ne tiens pas qu'a la page html, mais aussi à la base de donnée etc.

il y a un tuto la dessus : faq-tutoriels/encodage-utf-t245062.html

@+
Il en faut peu pour être heureux ......

Petit nouveau ! | 9 Messages

15 janv. 2014, 23:22

Si j'ai bien compris il vaut mieux utiliser charset=UTF-8 dans un document .html
Pour les documents en php je n'ai pas encore bien compris.

Donc ce n'est pas le navigateur responsable? Pourquoi si je rempli avec Safari ou chrome sur un Mac les caractères s'affichent correctement ?

Merci encore une fois.

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

16 janv. 2014, 00:59

le navigateur peu avoir un encodage qui correspond au tiens.

il faut que :
- le fichier lui même soit dans l'encodage que tu souhaite
- l'entête (le meta) du fichier soit dans le même encodage qui va bien
- que l'entête http contienne la bonne indication du charset (voir la bonne info dans l'entête http)
- tu peux indiquer le charset accepté dans le formulaire
coté sgbd :
- que le sgbd soit dans le bon charset
- que la connexion vers le sgbd ai le bon charset
- que les données dedans soit saine (pas daubé au départ sinon c'est foutu :D ).

Tous ceci est indiqué dans le tuto que j'ai indiqué.
le plus important c'est déjà la première partie (même si le tous l'est :) )


@+
Il en faut peu pour être heureux ......