Foros del Web » Programando para Internet » PHP »

Charset Mal

Estas en el tema de Charset Mal en el foro de PHP en Foros del Web. Hola Estoy haciendo una web y hay algunos caracteres como las Ñ y los acentiuados que me salen mal. En la pagina donde se muestra ...
  #1 (permalink)  
Antiguo 30/07/2010, 05:12
 
Fecha de Ingreso: diciembre-2007
Mensajes: 33
Antigüedad: 16 años, 4 meses
Puntos: 0
Charset Mal

Hola
Estoy haciendo una web y hay algunos caracteres como las Ñ y los acentiuados que me salen mal.
En la pagina donde se muestra index.php con charset utf-8, dentro de una tabla cargo valores de una base de datos con cotejamiento utf8_spanish_ci y ahi salen bien y sin ningun problema los caracteres que tienen que salir.
El problema esta que cuando en esa misma página cargo el texto que hay dentro de una funcion esos caracteres me salen mal.

Para aclarar lo que engo es mas o menos:

index.php (charset=utf-8)

en una celda tengo
Código PHP:
<td class="celdas1" width="300px"><? destaca1(); ?></td>
la funcion destaca1() esta en otro archivo llamado funciones el cual incluyo al principio de la página

dentro de funciones
tengo la funcion destaca1() que tiene:
Código PHP:
function destaca1()
{
printf("<tr>");
printf("<td colspan='2'>Título</td>");
printf("</tr>");
printf("<tr>");
printf("<td colspan='2'>Autor</td>");
printf("</tr>");
printf("<tr>");
printf("<td width='150px' rowspan='2'>Imagen</td>");
printf("<td width='150px'>Reseña</td>");
printf("</tr>");
printf("<tr>");
printf("<td colspan='2'>Precio</td>");
printf("</tr>");
printf("</table>");


en la pagina donde lo muestro tanto Título como Reseña salen mal por el acento y la Ñ.
He probado en el archivo de funciones a poner un header con el charset utf-8 y nada

Si directamente escribo un texto dentro de index.php que contenga acentos y ñ , éste se muestra bien.

¿Alguien sabe como arreglarlo?

Gracias
  #2 (permalink)  
Antiguo 30/07/2010, 05:14
 
Fecha de Ingreso: julio-2010
Mensajes: 30
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: Charset Mal

Yo tengo el mismo problema ahora me voy a poner a mirar
  #3 (permalink)  
Antiguo 30/07/2010, 10:40
 
Fecha de Ingreso: octubre-2009
Mensajes: 29
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Charset Mal

te salen cosas como esta: ����?
yo tenia ese mismo problema pero creo que lo puedes arreglar asi:

Código PHP:
function destaca1()
{
printf("<tr>\n");
printf("<td colspan='2'>Título</td>\n");
printf("</tr>");
printf("<tr>");
printf("<td colspan='2'>Autor</td>\n");
printf("</tr>\n");
printf("<tr>\n");
printf("<td width='150px' rowspan='2'>Imagen</td>\n");
printf("<td width='150px'>Reseña</td>\n");
printf("</tr>\n");
printf("<tr>");
printf("<td colspan='2'>Precio</td>\n");
printf("</tr>\n");
printf("</table>\n");

}    

$arreglo = array("&iquest;""&aacute;""&eacute;""&iacute;""&oacute;""&uacute;""&Aacute;""&Eacute;""&Iacute;""&Oacute""&Uacute;""&ntilde;""&Ntilde;""&rsquo;");
$problematicas = array("¿""á""é""í""ó""ú""Á""É""Í""Ó""Ú""ñ""Ñ""´");

$s destaca1();
$resultado str_ireplace$problematicas,$arreglo,$s);
echo 
$resultado

Última edición por WebPL; 30/07/2010 a las 10:45
  #4 (permalink)  
Antiguo 02/08/2010, 02:02
 
Fecha de Ingreso: diciembre-2007
Mensajes: 33
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Charset Mal

Gracias, lo tendré en cuenta.
  #5 (permalink)  
Antiguo 02/08/2010, 02:49
 
Fecha de Ingreso: mayo-2010
Mensajes: 51
Antigüedad: 13 años, 11 meses
Puntos: 3
Respuesta: Charset Mal

No amigo la solución no está en tus códigos, está en el archivo!!! :D

Ve a las opciones de tu editor de texto que estés usando y cambia la codificación a UTF-8 del archivo que incluyes.

Como este archivo no tiene ningún head con meta, se interpreta que su codificación es la que utiliza tu programa por default (creo que Western Europe).

Entonces tienes que indicarle al archivo que lo que contendrá es UTF-8.

De esa manera se resolverán mágicamente tus problemas :D
  #6 (permalink)  
Antiguo 02/08/2010, 11:23
 
Fecha de Ingreso: diciembre-2007
Mensajes: 33
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Charset Mal

gracias luisus, ya lo resolví hace ayer así como me dices. aunque antes habia probado a poner un header indicando la codificacion. Pero realmente como se solución fue cambiando la codificación del archivo mediante dreamweaver y como dices, mágicamente se arregló.
  #7 (permalink)  
Antiguo 02/08/2010, 13:28
 
Fecha de Ingreso: mayo-2010
Mensajes: 51
Antigüedad: 13 años, 11 meses
Puntos: 3
Respuesta: Charset Mal

Maravilloso edgin.

Yo también intentaba declarar un charset usando header dentro del archivo. Eso solucionaba parcialmente el problema porque traía aún más en el archivo base.

Espero muchas personas lean esta pregunta y su respuesta.

Saludos y felices códigos.

Etiquetas: charset, mal
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:05.