Problema tildes y eñes

No he parado de investigar y sigo con este quebradero de cabeza.
No sé cómo hacer para que cuando meto en sql server 2000 a través de un formulario ...
Ñandú
... No me inserte en el registro de sql server 2000 ...
ñAndú
He probado tanto poniendo en mis php ...
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
... Como ...
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
Cuando visualizo en php el registro introducido en sql server 2000 me sale correctamente ...
ñandú
... Pero lo veo de nuevo mal cuando lo paso a pdf con el siguiente código ...
header("Content-Type: application/pdf");
header("Content-Disposition: attachment; filename=\"Documento.pdf\""); passthru("htmldoc --format pdf --left 2.5cm --right 1.5cm --top 1.5cm --bottom 1.5cm " .
"--headfootsize 5 --header 'l' --footer 't' '/' " .
"--logoimage ./images/logotipo.jpg --linkcolor '#000FFF' " .
"--size 'a4' --fontsize 10 --bodyfont Arial --charset utf-8 " .
"--webpage http://www.servidor.es/mipaginaconpdf.php?codigo=$codigo");
¿Dónde está el problema? Esta página web está también en otra máquina linux y no me mete símbolos raros en los registros de sql server 2000. Y sql server 2000 no se ha tocado en absoluto.
¿Cómo puedo solucionarlo? Estoy desesperadísimo ya.

1 respuesta

Respuesta
1
La manera más segura para que funcione en todas partes es substituir los caracteres especiales por sus correspondientes equivalentes en HTML.
Te los escribo con espacios entremedio para que se puedan leer en el mensaje, pero se deben escribir todas las letras juntas:
& n t i l d e ;      ñ
& a a c u t e ;       á
& e a c u t e ;       é
& a g r a v e ;      à
& e g r a v e ;      è
& u u m l ;      ü
& c c e d i l ;      ç
& N t i l d e ;       Ñ
& A a c u t e ;      Á
Etc.
Con esto la visualización en HTML es siempre correcta independientemente del tipo de juego de caracteres que tenga la página en cuestión y del juego de caracteres de la base de datos.

Añade tu respuesta

Haz clic para o
El autor de la pregunta ya no la sigue por lo que es posible que no reciba tu respuesta.

Más respuestas relacionadas