Foros Programación Servidor

Acentos y caracteres especiales en PHP sobre IIS

5 5 Respuestas Miércoles 6 de agosto, 2008
Hola, estoy corriendo una aplicación en PHP sobre un servidor IIS.
Tengo el problema de que no me muestra corectamente caracteres especiales como la eñe o los acentos.
Todas las paginas llevan la etiqueta:
<meta>
y he modificado el php.ini:
default_charset = "iso-8859-1"

Todo esto na ha dado resultado. Como pista puedo decir que en el
servidor tambien esta corriendo una aplicacion ASP y no tiene ese problema.
¿Alguna idea?
Registrado desde 15/07/04
Número de posts: 275
  • Avatar de txuma txuma Registrado desde 01/04/03 / Número de posts: 6850
    Tiene tela que sea yo el que vaya a responder xD

    Cosas que se me ocurren:
    1. ¿Por qué no le has puesto UTF-8?
    2. ¿Te has asegurado que los ficheros .php están guardados con la misma codificación?

    Salu2
    .............................................................
    Txuma Campos
    Publicado hace 4 años
  • Avatar de paolacaracola paolacaracola Registrado desde 29/06/08 / Número de posts: 7
    A mi me pasó algo parecido al leer un xml (encoding="uft-8") desde php.

    La solución fue añadir esto al inicio del todo del archivo php:

    <?php
    header('Content-type: text/html; charset=UTF-8');


    Igualmente no se si será el mismo problema, o si te solucionará el tuyo, pero por si acaso...

    un saludo
    Publicado hace 4 años
  • Avatar de Neeno Neeno Registrado desde 08/10/08 / Número de posts: 2
    Ya que usas PHP porque no pasas cada string por la función htmlentities() para "codificar" los caracteres especiales en sus equivalentes html, y luego html_entity_decode() cuando quieras, por ejemplo meter el texto en una base de datos.
    Publicado hace 3 años
  • Avatar de happywebcoder happywebcoder Registrado desde 19/03/07 / Número de posts: 350
    Tendrás que asegurarte de que todos los datos que envíes sigan ese mismo encoding. Estos datos pueden ser los propios archivos php de las vistas de la aplicación (un editor medio decente tiene que permitirte saber en qué encoding están guardados y darte la opción de escoger en qué encoding guardarlos), la información almacenada en la base de datos, o cualquier otro archivo que intervenga en el HTML que vas a enviar en la respuesta (por ejemplo, como te decían más arriba, si trabajas con información obtenida de de datos XML).

    En fin, que tanto la aplicación como cualquier dato que vayas a enviar deberían usar el mismo encoding. Lo ideal hoy en día es que, como dice Txuma, todo trabaje usando el encoding UTF-8.
    Publicado hace 3 años
  • Avatar de Neshumah Neshumah Registrado desde 07/10/08 / Número de posts: 3
    tambien es bueno tener en cuanta que el interprete de PHP no lee utf-8 es mejor que los archivos de "solo codigo" esten en unicode
    Publicado hace 3 años