Convertir son site ou sa base de données

Fermé
etoile9430 Messages postés 435 Date d'inscription jeudi 21 janvier 2010 Statut Membre Dernière intervention 23 août 2017 - 24 mai 2013 à 09:29
 sogipe - 24 mai 2013 à 17:13
Bonjour,
j'ai un site en PHP encoder en UTF-8 et j'ai un probléme avec les caractères quand j'écris par exemple "très" dans mon formulaire dans ma base de donné je vois "trés" et quand je récupère les valeurs qui son dans ma base de données je vois toujours "trés" j'aimerai savoir si je doit changer le formatage de mes pages ou c'est plutôt ma base de données ?
cordialement
A voir également:

2 réponses

Utilisateur anonyme
24 mai 2013 à 09:42
Salut, je sais que défois ça n'a pas le même comportement en ligne et en local. J'avais passé des heures à chercher en local et quans je l'ai mis en ligne tout était ok.

si utf-8 ne passe pas essaye comme ça :

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

/* ou alors celui là  */

<meta http-equiv="Content-type" content="text/html; charset=iso-8859-1"/>


0
etoile9430 Messages postés 435 Date d'inscription jeudi 21 janvier 2010 Statut Membre Dernière intervention 23 août 2017 19
24 mai 2013 à 10:14
merci grâce à ça ça va mieux
quand je tape par exemple "très" dans mon formulaire, je trouve ça "très" dans ma base de données et lorsque je récupère la valeur sur mon site je revois "très"
une petite et dernier question est-ce que c'est normal?
0
Utilisateur anonyme
24 mai 2013 à 11:20
alors là tu me pose une colle :/ et quand je sais pas, je préfère ne rien dire....
0
Ysabe_l Messages postés 12624 Date d'inscription vendredi 12 avril 2013 Statut Contributeur Dernière intervention 16 mars 2025 276
24 mai 2013 à 12:07
J'ai pas compris ta question là tu es en train de dire que si tu écris "très" c'est bien ce que tu lis partout ensuite, donc oui ça semble logique puisque tu as résolu le soucis. D'ailleurs si ça a marché en mettant le second code donné c'est que ta base de données était en latin-1 et la page en utf-8, quitte à faire un changement dans un des deux il me semble qu'il est mieux de tout mettre en utf8.
0
etoile9430 Messages postés 435 Date d'inscription jeudi 21 janvier 2010 Statut Membre Dernière intervention 23 août 2017 19
Modifié par etoile9430 le 24/05/2013 à 13:28
Ysabe_l je me suis trompé quand je tape par exemple "très" dans mon formulaire, je trouve ça "trés" dans ma base de données et lorsque je récupère la valeur sur mon site je revois "très"
0
Ysabe_l Messages postés 12624 Date d'inscription vendredi 12 avril 2013 Statut Contributeur Dernière intervention 16 mars 2025 276
24 mai 2013 à 13:41
Ah oui je me disais aussi c'est plus "logique" comme ça.

Tu as mis quoi finalement comme encodage sur la page ? Et ta base de données elle est en quel encodage ?
0
Pour ma part, j'utilise ce qu'il y à par défaut pour mysql : latin1_swedish_ci.
Ensuite dans mes pages :
<meta content="Content-Type: text/html; charset=iso-8859-1">


Mais depuis que j'ai appris que ce n'était pas bon pour la vitesse et donc le référencement, j'envoie le charset dans l'en tête (header) avec php :
header('Content-Type: text/html; charset=iso-8859-1');


Après dans php les fonctions utf8_decode et utf8_encode vont te permettre de décoder ce que tu reçois si c'est de l'utf8, et encoder pour l'envoi... Je m'en servais beaucoup pendant un temps car je développais des applis avec javascript, et je devais toujours décoder, encoder, ...

Je sais pas si ça t'a aidé, mais c'est tout ce que je sais
0