Foros del Web » Programación para mayores de 30 ;) » Programación General »

XML con charset UTF-8 no muestra comillas simples (')

Estas en el tema de XML con charset UTF-8 no muestra comillas simples (') en el foro de Programación General en Foros del Web. Muy buenas! Es mi primer mensaje en el foro, y no sé muy bien si ponerlo aquí o en el foro de PHP... Os explico ...
  #1 (permalink)  
Antiguo 18/10/2008, 04:23
 
Fecha de Ingreso: octubre-2008
Mensajes: 64
Antigüedad: 16 años, 1 mes
Puntos: 1
XML con charset UTF-8 no muestra comillas simples (')

Muy buenas!

Es mi primer mensaje en el foro, y no sé muy bien si ponerlo aquí o en el foro de PHP...

Os explico mi problema: estoy mostrando un archivo XML con PHP buscando información en una base de datos codificada en utf8_general_ci. Els archivo me muestra bien los acentos y demás carácteres especiales, excepto las comillas simples (').

Os dejo el código que estoy usando:

Código PHP:
<?php
header
("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); 
header("Last-Modified: " gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0"false);
header("Pragma: no-cache");
header("content-type:text/xml");
$name=$_GET['name'];
require (
"include/dbconnect.php");

$query="";
echo 
"<?xml version='1.0' encoding='utf-8'?><markers>";
if (
$name != ""){
if (
$name=='tots'){
    
$query="SELECT name,lat,lng,county,type,elevation FROM tutor";
    }
if (
$name=='prehistoria'){
    
$query="SELECT name,lat,lng,county,type,elevation FROM tutor WHERE county='Jefferson' limit 10";
    }
if (
$name=='antiga'){
    
$query="SELECT name,lat,lng,county,type,elevation FROM tutor WHERE county='Clackamas' limit 20";
    }
if (
$name=='parc'){
    
$query="SELECT name,lat,lng,county,type,elevation FROM tutor WHERE class='park' limit 20";
    }
if (
$name=='vila'){
    
$query="SELECT nom,lat,lng,edat,tipus,patrimoni,descripcio FROM llocs_mapa";
    }
if (
$query != ""){
    
$results mysql_query($query);
    while (
$row=mysql_fetch_array($results)){
        echo 
utf8_encode('<marker html="'.$row[0].'" lat="'.$row[1].'" lng="'.$row[2].'" county="'.$row[3].'" type="'.$row[4].'" elev="'.$row[5].'" descripcio="'.$row[6].'"/>'); }
    }
}
    echo 
"</markers>";
?>
Podéis ver el archivo aquí: http://webs.racocatala.cat/patrimonivila/loginsystem/marks.php?name=vila Este archivo lo uso para coger información de la base de datos y mostrarla via JavaScript en un mapa de Google (http://webs.racocatala.cat/patrimonivila/loginsystem/). Como podéis ver, la comillas no me las muestra bien...

Alguien me puede ayudar? Muchísimas gracias!

Nota: Pongo los enlaces en negrita porque no me deja ponerlos hasta que tenga 30 días de antigüedad...


ACTUALIZACIÓN: He coneguido mostrar bien las comillas cambiando el charset a latin1 y quitando el utf8_encode() del final del código. Es una buena solución?

Última edición por mrc2407; 18/10/2008 a las 04:40
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 23:30.