| |||
| Problema con caracteres Hola Gente!! Despues de mucho buscar encontre este parser en php, para poner noticias RSS en mi sitio. Pero el problema esta en que cuando las noticias tienen eñes o acentos me los muestra como caracteres raros. Quiero saber como puedo solucionarlo. Me vendria barbaro si alguno me puede ayudar. Codigo: <?php $insideitem = false; $tag = ""; $title = ""; $description = ""; $link = ""; function startElement($parser, $name, $attrs) { global $insideitem, $tag, $title, $description, $link; if ($insideitem) { $tag = $name; } elseif ($name == "ITEM") { $insideitem = true; } } function endElement($parser, $name) { global $insideitem, $tag, $title, $description, $link; if ($name == "ITEM") { printf("<dt><b><a href='%s'>%s</a></b></dt>", trim($link),htmlspecialchars(trim($title))); printf("<dd>%s</dd>",htmlspecialchars(trim($description))); $title = ""; $description = ""; $link = ""; $insideitem = false; } } function characterData($parser, $data) { global $insideitem, $tag, $title, $description, $link; if ($insideitem) { switch ($tag) { case "TITLE": $title .= $data; break; case "DESCRIPTION": $description .= $data; break; case "LINK": $link .= $data; break; } } } $xml_parser = xml_parser_create(); xml_set_element_handler($xml_parser, "startElement", "endElement"); xml_set_character_data_handler($xml_parser, "characterData"); $fp = fopen("http://www.lanacion.com.ar/herramientas/rss/index.asp?origen=2","r") or die("Error reading RSS data."); while ($data = fread($fp, 4096)) xml_parse($xml_parser, $data, feof($fp)) or die(sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)), xml_get_current_line_number($xml_parser))); fclose($fp); xml_parser_free($xml_parser); ?> Saludos :D |
| ||||
| Re: Problema con caracteres El tema es que debe estar en utf8, intenta pasando el string ese por funciones como utf8_decode
__________________ Mi punto de partida es Que Bueno Lo Nuevo |
| |||
| Re: Problema con caracteres Cita: Probe con casi todos los scripts de la pagina y ninguna me dio resultado. Alguien sabe como lo puedo solucionar, para que se vean bien todos los caracteres? |
| |||
| Re: Problema con caracteres Mira este post, y deberas indicar la codificación. http://www.forosdelweb.com/f18/leer-rss-con-php-388826/ los campos deberás escribirlos así, utf8_decode($rss_channel["ITEMS"][$i]["DESCRIPTION"]) La verdad que no tengo ni idea y tambien estoy buscando información, las funciones para php 5.1 como "simplexml_load_file " no me funciona con archivos externos a mi sevidor, y lo unico que he conseguido hacer correr es el anterior script. Aprovecho para ver si alguien me puede indicar como puedo solo mostrar los Items que tenga un campo (ej: description) que incluya determinada palabra. |
| ||||
| Re: Problema con caracteres No se porque se complican la vida tratando con php, habiendo lectores de rss desde js que se adaptan mejor (desde usando la api de google, hasta ajax con jQuery y su funcion ajax>load)
__________________ Mi punto de partida es Que Bueno Lo Nuevo |
| |||
| Re: Problema con caracteres Le echare un vistazo, pero alguien me puede orientar de como filtrar los resultados por una palabra clave en el anterior script o en el que yo hago referencia, me lio con las funciones y no se donde meterle mano. Última edición por Merter; 05/09/2007 a las 11:17 |