| Auteur | Pages : [>] |
|---|---|
| cheucher50 | # 21 Mar 2005 - 15:32:17 |
| 44 Posts |
Bonjour, je suis en train de valider et donc corriger mon site en xhtml 1.0. J'ai une page php qui me renvoie les infos de ma table. Cette table contient en fait des annonces que l'on m'envoie sur fichier word et que j'insère en copier-coller. J'ai l'impression que les carctères copier-collés dans word me créent donc cette erreur dans le validateur non SGML character .Existe t il une fonction php type qui me premettrait de renvoyer du texte propre ? Merci d'avance. |
| FlorentG | # 21 Mar 2005 - 15:33:03 |
| 904 Posts |
Cet article devrait t'aider Plus tu pédales moins vite, moins t'avances plus vite. |
|
|
| cheucher50 | # 21 Mar 2005 - 15:47:47 |
| 44 Posts |
oui, on a les correspondances sur le lien donné mais je ne vais pas m'amuser à chaque saisie à repérer les caractères spéciaux et taper le code. Je vais voir genre si on enregistre le fichier word en unicode et que l'on insère (un peu comme pour flash) si ça marche. |
| cheucher50 | # 21 Mar 2005 - 15:53:55 |
| 44 Posts |
marche pas !!! |
| ernstein | # 22 Mar 2005 - 17:58:17 |
| 626 Posts |
Y'a des chances que ton probmème soit le résultat du copier collé d'un texte venant de word vers xhtml. Fais un test en passant par un fichier RTF et ouvre le sous wordpad afin de faire ton copier collé d'ici. |
| Nyro Xeo | # 22 Mar 2005 - 18:02:39 |
| 159 Posts |
Change l'encodage de ta page. Par exemple si l'encodage est ANSI, mets :<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" /> Si c'est UTF-8, mets : <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> -={ Nyro Xeo }=- |
| chben | # 31 Mar 2005 - 11:22:25 |
| 31 Posts |
Ce qui arrive, bien souvent, c'est que les apostrophes de word sont inconnues ar les navigateurs. Et de fait, si tu fais attention, Word t'affiche (lorsque tu appuies sur la touche 4 pour faire une apostrophe) une belle apostrophe courbe. Ouvre maintenant un fichier txt et fait une apostrophe, tu obtiens un vulgaire "bâton" vertical. Autrement dit, Word converti les apostrophe "standard" en un caractère dont je n'ai pas réussi à trouver le code héxadécimal. Et c'est ce qui bloque le validator. Pour ma part en tout cas, c'est ce que j'ai eu à faire : faire un "remplacer par" pour toutes les apostrophes depuis un fichier txt avant d'enregistrer mes contenus en Base de données. Tu me diras si ça marche mieux. PS : bien que c'est l'apostrophe qui fait bloquer le validator, ce dernier affiche parfois que le caractère qui va pas est une autre lettre, un 'f', un 'c', je sais pas trop pourquoi mais c'est dû à une postrophe qui se trouve un peu avant ou après. NB : c'est en tout cas le cas sur le projet que je suis en train de faire en ce moment même. Maintenant, cela vient peut être d'autre part ! |
| Stephan | # 31 Mar 2005 - 11:26:24 |
| 3160 Posts |
chben a écrit : L'entité est &*rsquo; (sans l'astérisque) <edit /> Ce que tu appelles une « apostrophe standard » est en réalité un guillemet simple. Modifié par Stephan (31 Mar 2005 - 11:28) |
| chben | # 31 Mar 2005 - 15:06:05 |
| 31 Posts |
Oui, autant pour moi, j'ai appelé apostrophe "standard" une simple quote. d'où les guillemets qui encadraient "standard"... bref... est-ce que ça a résolu le problème ? là est la question ! |
| Stephan | # 01 Apr 2005 - 19:16:29 |
| 3160 Posts |
chben a écrit : Là est la question ! |
| cheucher50 | # 04 Apr 2005 - 09:56:31 |
| 44 Posts |
Pour infos, je suis toujours à la recherche d'une fonction php capable de faire le boulot de remplacement des caractères à ma place. |
| cheucher50 | # 04 Apr 2005 - 10:04:52 |
| 44 Posts |
Euh pour répondre à chben, pour l'instant je fais un dump de ma base de données dans un fichier texte et remplace les caractères invalides par leurs équivalents valides puis je réinsère le tout. |
| cheucher50 | # 04 Apr 2005 - 14:23:34 |
| 44 Posts |
bon, comme y avait pas ce que je cherchais j'ai fait une fonction php pour convertir automatiquement les caractères invalides. J'suis pas une star en php alors ça vaut ce que ça vaut, mais ça fonctionne. Et comme je suis partageur je vous file même le code : <?php //transformation des caracteres invalides de word en caracteres valides SGML $sgml_carte = array( "‚" => "‚", "ƒ" => "ƒ", "„" => "„", "…" => "…", "†" => "†", "‡" => "‡", "ˆ" => "ˆ", "‰" => "‰", "Š" => "Š", "‹" => "‹", "Œ" => "Œ", "‘" => "‘", "’" => "’", "“" => "“", "”" => "”", "•" => "•", "–" => "–", "—" => "—", "˜" => "’", "™" => "™", "š" => "š", "›" => "›", "œ" => "œ", "Ÿ" => "Ÿ" ); function sgmlconverter($str) { global $sgml_carte; return strtr(html_entity_decode($str), $sgml_carte); } ?> |
| cheucher50 | # 04 Apr 2005 - 14:32:50 |
| 44 Posts |
Ben, ça a pas marché ça a retranscrit le html dans mon post. Bon, ben j'arrive pas à trouver où on désactive le html. Par contre j'ai trouvé un smiley bien délire... |
| PMingard | # 22 Apr 2005 - 18:00:29 |
| 37 Posts |
Bonjour, moi j'ai un truc marrant également, le parser XHTML ne me valide pas certains caractères... mais voyez vous-même :
Sisi, vous avez bien vu, c'est pas un caractère spécial mais bien un "d" qui foire. Pour plus d'info, regardez le validateur vous-même : http://validator.w3.org/check?uri=http%3A%2F%2Fwww.final-fantasy.ch%2Fnewdesign%2FFf8%2Fff8soluce2.php |
| Flyman30 | # 23 Apr 2005 - 08:34:04 |
| 109 Posts |
J'ai résolu le problèmes des codes spéciaux créés par Word par :<meta http-equiv="content-type" content="text/html; codepage="1252" /> en lieu et place de <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" /> Ça fonctionne sans aucun problèmes @+ |
| PMingard | # 24 Apr 2005 - 10:05:56 |
| 37 Posts |
J'ai finalement résolu mon problème. Le parser de vérification XHTML ne me soulignait pas le texte à l'endroit de l'erreur mais une dizaine de caractères avant. Evidemment j'ai mis un moment à comprendre. Mais c'était bien des caractères windows mal encodés. Merci ++ |
| Bruntho | # 29 Apr 2005 - 10:02:02 |
| 17 Posts |
Merci a toutes ces infos, ce problème vient de m'arriver et j'avais du mal a saisir ce que venait faire cette erreur qui n'arrivait que lorsque je changeais l'encodage... Le problème c'est que si je mets UTF-8 mon lien vers Valid CSS ne fonctionne pas (j'ai une grosse erreur qui me dit de valider mon doc xml avant) et en iso-8859-1 ca fait des caractères vilains et donc du xhtml pas valide (mais un Valid CSS! qui peut etre vu) ... quel dilemme Merci a tous. |
| Jep | # 29 Apr 2005 - 10:09:55 |
| 530 Posts |
cheucher50 a écrit : Un jour vous vous deciderez à utiliser Tidy : > http://php.net/tidy >> Javascript : La gestion des dependances en Javascript |
| Mathis | # 04 May 2005 - 11:16:05 |
| 62 Posts |
Bonjour, Donc personne a une fonction PHP simple pour regler ce genre de probleme? Merci |
Pages : [>] |
|
Les références web : openweb.eu.org - opquast.com - webmaster-hub.com - webrankinfo.com - salemioche.net - web-pour-tous.org - webonorme.org
Nos partenaires : Editions Eyrolles