Discussion:
headers et chunked
(trop ancien pour répondre)
Thierry
2007-01-24 23:15:56 UTC
Permalink
'soir,

Tout a coup un script foire avec l'erreur "headers already sent by line 1".
Je recherche : pas d'espace au debut du script.
Je le reduit a ça et toujours la même erreur:
<?php header("Content-Length: 250"); ?>

J'ai l'impression que ca vient du transfert encoding chunked qui envoi au
debut la taille des données. J'ai regarde la FAQ qui ne parle pas de ce
probleme.
Olivier Miakinen
2007-01-24 23:37:30 UTC
Permalink
Post by Thierry
Tout a coup un script foire avec l'erreur "headers already sent by line 1".
Je recherche : pas d'espace au debut du script.
<?php header("Content-Length: 250"); ?>
Quelqu'un a eu le problème récemment avec un script en UTF-8. J'avais
suggéré que le fichier était peut-être sauvé avec un « Byte-Order Mark »
(BOM) quoique ce soit parfaitement stupide pour de l'UTF-8, et en effet
c'était bien le cas.

Ne serait-ce pas la même chose pour toi ?
Post by Thierry
J'ai l'impression que ca vient du transfert encoding chunked qui envoi au
debut la taille des données.
Je n'en crois rien (toutes mes pages semblent utiliser la même chose
sans aucun problème).
Post by Thierry
J'ai regarde la FAQ qui ne parle pas de ce probleme.
John, on peut rajouter quelque chose à ce sujet dans la FAQ ?
Thierry
2007-01-25 00:16:02 UTC
Permalink
Post by Olivier Miakinen
Quelqu'un a eu le problème récemment avec un script en UTF-8.
Bingo. Cet ****** d'Ultraedit a enregistré le fichier en UTF a mon insu.
A moins que ce soit FileZilla qu'a fait du zele...

Merci beaucoup.
Thief13
2007-01-25 14:09:13 UTC
Permalink
Post by Thierry
Post by Olivier Miakinen
Quelqu'un a eu le problème récemment avec un script en UTF-8.
Bingo. Cet ****** d'Ultraedit a enregistré le fichier en UTF a mon insu.
A moins que ce soit FileZilla qu'a fait du zele...
Merci beaucoup.
A ce sujet, commet fait on pour connaitre le charset d'un ou de
plusieurs fichiers textes simplement ?
Olivier Miakinen
2007-01-25 15:34:39 UTC
Permalink
Post by Thief13
Post by Thierry
Bingo. Cet ****** d'Ultraedit a enregistré le fichier en UTF a mon insu.
A moins que ce soit FileZilla qu'a fait du zele...
A ce sujet, commet fait on pour connaitre le charset d'un ou de
plusieurs fichiers textes simplement ?
Pour un texte qu'on a soi-même écrit : au moment de le sauver, on fait
gaffe au jeu de caractères dans lequel l'éditeur envisage de l'écrire.

Pour un texte de quelqu'un d'autre : une fois lu en supposant un jeu de
caractères donné, on regarde s'il est lisible ou non. Si oui, c'est
qu'on avait bien intuité ; sinon, un peu d'habitude permet de deviner
quel *autre* jeu de caractères cela pourrait être.

Par exemple, si chaque caractère accentué d'un texte en français se
retrouve transformé en deux caractères quand on le lit avec un jeu
mono-octet, les lettres non accentuées restant lisibles, on peut
supposer que qu'on a affaire à de l'UTF-8. Ceci est particulièrement
vrai si on l'a lu comme si c'était de l'ISO-8859-1 ou du cp1252, et
que le premier caractère de chaque paire est un Â, un à ou un Å.
Olivier Miakinen
2007-01-25 17:16:56 UTC
Permalink
Post by Olivier Miakinen
Post by Thief13
A ce sujet, commet fait on pour connaitre le charset d'un ou de
plusieurs fichiers textes simplement ?
Pour un texte de quelqu'un d'autre : une fois lu en supposant un jeu de
caractères donné, on regarde s'il est lisible ou non. Si oui, c'est
qu'on avait bien intuité ; sinon, un peu d'habitude permet de deviner
quel *autre* jeu de caractères cela pourrait être.
Noter qu'à ce jeu de devinette il arrive que plusieurs jeux de
caractères soient également possibles tant que l'on n'utilise que
leur dénominateur commun.

Par exemple, un texte qui ne contient que de l'ASCII restera correct si
on le lit en ISO-8859-1, ou en cp1252, voire en CP850 ou CP437, et même
en UTF-8.

Un texte écrit en CP1252 restera indistinguable de l'ISO-8859-1 ou de
l'ISO-8859-15 dans l'immense majorité des cas. Seuls certains caractères
permettent de faire la différence, par exemple un « œ » qui existe à la
position 9C (hexa) dans cp1252, à la position BD dans ISO-8859-15, et
pas du tout dans ISO-8859-1. Autre exemple, le Ç se trouve à la position
C7 dans ISO-8859-1, ISO-8859-15 et CP1252, mais à la position 80 dans
CP850 et CP437.

Sinon, il y a aussi des jeux de caractères qui ne conservent même pas
l'ASCII tel quel : sans même parler des EBCDIC, il y a par exemple les
UTF-16 (little endian ou big endian) qui rajoutent un 00 entre deux
octets ASCII.
Thief13
2007-02-12 07:50:13 UTC
Permalink
Post by Olivier Miakinen
Post by Thief13
Post by Thierry
Bingo. Cet ****** d'Ultraedit a enregistré le fichier en UTF a mon insu.
A moins que ce soit FileZilla qu'a fait du zele...
A ce sujet, commet fait on pour connaitre le charset d'un ou de
plusieurs fichiers textes simplement ?
Pour un texte qu'on a soi-même écrit : au moment de le sauver, on fait
gaffe au jeu de caractères dans lequel l'éditeur envisage de l'écrire.
Pour un texte de quelqu'un d'autre : une fois lu en supposant un jeu de
caractères donné, on regarde s'il est lisible ou non. Si oui, c'est
qu'on avait bien intuité ; sinon, un peu d'habitude permet de deviner
quel *autre* jeu de caractères cela pourrait être.
Par exemple, si chaque caractère accentué d'un texte en français se
retrouve transformé en deux caractères quand on le lit avec un jeu
mono-octet, les lettres non accentuées restant lisibles, on peut
supposer que qu'on a affaire à de l'UTF-8. Ceci est particulièrement
vrai si on l'a lu comme si c'était de l'ISO-8859-1 ou du cp1252, et
que le premier caractère de chaque paire est un Â, un à ou un Å.
je parlait en php, pas à vue d'oeil, c'est pas possible ?

John GALLET
2007-01-28 20:51:20 UTC
Permalink
Post by Olivier Miakinen
Post by Thierry
J'ai regarde la FAQ qui ne parle pas de ce probleme.
John, on peut rajouter quelque chose à ce sujet dans la FAQ ?
Oui bien sûr.

<FLAME ME="ON">
Je propose l'ajout suivant :

"Une bande d'abrutis incompétents ayant arbitrairement décidé que la terre
entière devait désormais avoir des programmes qui ne marchent pas en UTF-8
au lieu d'avoir des programmes qui marchent en charset localisé, il se
peut que vos éditeurs pourrissent vos fichiers à l'insu de votre plein gré
au lieu de faire ce qu'on leur demande à savoir ne pas foutre des octets
non imprimables partout. Pour résoudre ce problème, vriez ces merdes et
utilisez vi."

Ca convient ?
</FLAME>

JG
--
edlin rulezzzzzz
Thierry Boudet
2007-01-29 11:34:18 UTC
Permalink
Post by John GALLET
Post by Olivier Miakinen
Post by Thierry
J'ai regarde la FAQ qui ne parle pas de ce probleme.
John, on peut rajouter quelque chose à ce sujet dans la FAQ ?
Oui bien sûr.
au lieu de faire ce qu'on leur demande à savoir ne pas foutre des octets
non imprimables partout. Pour résoudre ce problème, vriez ces merdes et
utilisez vi."
Ca convient ?
s/vi/Vim/
--
bref SQL est plus structuré que XML et PICK puisque tout est en vrac
dans SQL on doit pas avoir la même notion de structure ce qui explique
que tu végète dans le SQL
--{ Helios, théoricien du chaos }--
Thierry
2007-01-29 11:34:18 UTC
Permalink
Post by John GALLET
<FLAME ME="ON">
"Une bande d'abrutis incompétents ayant arbitrairement décidé que la terre
entière devait désormais avoir des programmes qui ne marchent pas en UTF-8
au lieu d'avoir des programmes qui marchent en charset localisé, il se
peut que vos éditeurs pourrissent vos fichiers à l'insu de votre plein gré
au lieu de faire ce qu'on leur demande à savoir ne pas foutre des octets
non imprimables partout. Pour résoudre ce problème, vriez ces merdes et
utilisez vi."
Ca convient ?
Non. On s'en fout de savoir de qui entre l'editeur, le client FTP ou les
debris de cacahouetes dans le clavier generant un caractere a la con est la
cause du pb. L'important est a la solution.
Continuer la lecture sur narkive:
Loading...