encoder une base de donnée en utf8

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : encoder une base de donnée en utf8

par seïna » 03 sept. 2008, 13:16

Merci tout le monde. Sujet résolu !!!
ElePHPant

par albat » 01 sept. 2008, 13:34

Probablement pas.
Mais quoi qu'il en soit, cette toute petite requête est toujours bienvenue.

par seïna » 01 sept. 2008, 11:49

OK je vois. Ce qui veut dire que ce n'est pas possible chez mon hébergeur je suppose??

par AB » 25 août 2008, 12:18

Oui dans le doctype si c'est ça que tu veux dire.
On m'a conseillé autre chose que je viens d'essayer et qui marche : :P
$connexion->query('SET NAMES utf8');
Je l'ai mis après l'instanciation de mon objet connexion.
Mais je ne comprends pas pourquoi j'ai besoin de faire ça alors que je pensais avoir précisé que toute la chaîne était en utf8.
Et il n'y a pas moyen de faire un truc une bonne fois pour toutes? J'aimerais ne pas avoir besoin de mettre cette ligne après chaque ouverture de connexion, ça doit être possible quand même. :-k
Mysql travaille par défaut en iso ISO-8859-1. Pour pouvoir enlever cette ligne il faudrait que tu puisse configurer les réglages par défaut de mysql en utf8.

par Invité » 25 août 2008, 00:30

Ah je me suis mal exprimée. Je voulais dire dans la balise méta.
Mais sinon pas d'idée sur une autre manière de procéder??
:-s

Re: encoder une base de donnée en utf8

par Victor BRITO » 24 août 2008, 00:35

avec le doctype ci dessous

Code : Tout sélectionner

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
Ce n'est pas un doctype, mais une balise meta renseignant une métadonnée. Pour info, un doctype ressemble à ça pour la syntaxe et à ça pour le HTML et le XHTML.

par seïna » 23 août 2008, 19:57

Oui dans le doctype si c'est ça que tu veux dire.
On m'a conseillé autre chose que je viens d'essayer et qui marche : :P
$connexion->query('SET NAMES utf8');
Je l'ai mis après l'instanciation de mon objet connexion.
Mais je ne comprends pas pourquoi j'ai besoin de faire ça alors que je pensais avoir précisé que toute la chaîne était en utf8.
Et il n'y a pas moyen de faire un truc une bonne fois pour toutes? J'aimerais ne pas avoir besoin de mettre cette ligne après chaque ouverture de connexion, ça doit être possible quand même. :-k

par Cyrano » 23 août 2008, 19:24

As-tu indiqué l'encodage dans l'en-tête de tes pages HTML ? :-*

encoder une base de donnée en utf8

par seïna » 23 août 2008, 18:00

Bonjour,
Je fais un site et j'ai besoin de l'utf-8 (j'utilise Mysql avec PDO) donc j'ai mis toutes mes pages avec le doctype ci dessous

Code : Tout sélectionner

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
Quand j'ai fait ma base de données j'ai mis la base et toutes les tables en utf8 :

Code : Tout sélectionner

CREATE DATABASE nomdelabase DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Code : Tout sélectionner

ENGINE = innodb CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Et malgré tout ça, quand je rentre des accents dans les formulaires : ça foire !
Quand je vais dans phpMyadmin les caractères sont transformés.
ex : Les îles de Barnabé pour : les îles de Barnabé
ça devrait marcher pour : ça devrait marcher.
Il me semblait avoir suivi toutes les recommandations que j'avais trouvées sur le web mais j'ai dû oublier quelque chose.
Merci d'avance