Encoding / decoding

Invité
Invité n'ayant pas de compte PHPfrance

30 mars 2008, 21:54

Salut!

* C'est quoi la difference entre encoding et decoding ?
* Est ce que ce meta tag est encoding ou decoding <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

* Meme si j'utilise le codage utf-8 dans ma page, je n'arrive pas a recuprer quelques mots, je les recupere etant que des points d'interrogations.

Merci pour votre aide

Mammouth du PHP | 2937 Messages

30 mars 2008, 22:14

Il y a plusieurs points à distinguer :
  • l'attribut encoding du prologue XML (qui indique le codage du fichier XML)

    Code : Tout sélectionner

    <?xml version="1.0" encoding="iso-8859-1"?>
  • le codage indiqué dans l'attribut content de l'élément meta dont tu parles (en anglais, c'est le terme encoding qui est employé
  • des fonctions comme utf8_encode() et utf8_decode() (qui, respectivement, convertissent une chaîne ISO-8859-1 en UTF-8 et inversement)
Pour coder en UTF-8, il ne suffit pas de déclarer le codage dans le code, mais d'enregistrer le fichier sous le bon format. Par exemple, sous Notepad++, il suffit de faire (je le dis de mémoire) Édition > Encoder en UTF-8 (sans BOM) ; sous Dreamweaver, Ctrl+J puis Titre/codage > Unicode (UTF-8) (mais sans cocher la case BOM).

Invité
Invité n'ayant pas de compte PHPfrance

30 mars 2008, 22:41

J'utilise notepad seulement, dans Encoding j'ai choisis UTF-8

Mammouth du PHP | 2937 Messages

31 mars 2008, 09:13

J'utilise notepad seulement
Le bloc-notes de Windows ou Notepad++ ?

Si c'est Notepad++, ne sélectionne pas "Encoder en UTF-8", mais garde sélectionné "encoder en ANSI" tout en sélectionnant "encoder en UTF-8 (sans BOM)". C'est un peu étrange, mais c'est comme ça.

Invité
Invité n'ayant pas de compte PHPfrance

01 avr. 2008, 00:23

J'utilise notepad seulement
Le bloc-notes de Windows ou Notepad++ ?

Si c'est Notepad++, ne sélectionne pas "Encoder en UTF-8", mais garde sélectionné "encoder en ANSI" tout en sélectionnant "encoder en UTF-8 (sans BOM)". C'est un peu étrange, mais c'est comme ça.
Le notepad de windows, je vais essayer sous Dreamweaver CS

ViPHP
ViPHP | 3607 Messages

01 avr. 2008, 09:22

Sinon en supplément, un petit lien pour comprendre tout ça:
http://www.siteduzero.com/tuto-3-6276-1 ... ments.html
(attention je ne garanti rien du contenu, je n'ai fait que survoler le tuto ;) )

Invité
Invité n'ayant pas de compte PHPfrance

02 avr. 2008, 22:46

Merci pour le lien, je vais voir, ce qui me rend fou, pourquoi quand je redige un texte avec n'importe quelle langue ca marche bien, mais si je les recupere de la base de donnee ca donne des points d'interrogations :(

ViPHP
ViPHP | 3607 Messages

02 avr. 2008, 23:03

C'est parce qu'il y a une différence d'encodage entre ta base de donnée et ta page html (voir même de ton script php en plus),
il faut unifier tout ça!
Lit un peu le tuto ;)

Invité
Invité n'ayant pas de compte PHPfrance

03 avr. 2008, 00:15

J'ai lu le tuto, je l'ai applique tout en utilisant le meme encodage utf-8

Invité
Invité n'ayant pas de compte PHPfrance

03 avr. 2008, 09:14

Et? le résultat?