Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.
Como seria el script
Enviado por legacom el día 30 de mayo de 2005
Hola que tal no tengo mucha idea de programacion,a ver si alguien me puede ayudar,tengo un archivo xml de galerias de imagenes autoactualizable y quisiera saber que hacer para mostrar las galerias,gracias de antemano y un saludo.
Por cierto he encontrado este codigo por hay,pero no me funciona ¿que falla?
CODIGO:
<?// fichero que alojamos en nuestro server con privilegios de escritura
$file_xml="fichero_de_galerias.xml";
// ruta a la carpeta donde alojaremos las imagenes para distinguir entre videos y videos
$path_imgs="images/";
$parser = new parser;
//$fp = $parser->getXML("http://direccion/fichero_de_galerias.php?format=XML¶ms=", $file_xml);
class parser {
var $insideitem = false;
var $tag = "";
var $title = "";
var $description = "";
var $link = "";
function getXML($source, $target) {
$time = time() - 21600;
function startElement($parser, $name, $attribs)
{
global $currentTag, $currentAttribs, $titulo, $link, $type;
$currentTag = $name;
$currentAttribs = $attribs;
// Definir el elemento HTML que corresponde con cada token del xml
switch ($name) {
case "name":
while (list ($key, $value) = each ($attribs)) {
echo("+++$key: $value\n");
}
break;
case "url":
while (list ($key, $value) = each ($attribs)) {
echo("+++$key: $value\n");
}
break;
case "type":
while (list ($key, $value) = each ($attribs)) {
echo("+++$key: $value\n");
}
break;
default:
break;
}
}
function endElement($parser, $name)
{
global $currentTag, $titulo, $link, $type;
// tags HTML de salida
/* switch ($name) {
case "name":
echo($value);
break;
case "url":
echo($value);
break;
case "type":
echo($value);
break;
default:
break;
}*/
// vaciamos las variables
$currentTag = "";
$currentAttribs = "";
}
// procesamos los datos entre tags
function characterData($parser, $data)
{
global $currentTag, $titulo, $link, $type;
// añadimos los html al valor actual
switch ($currentTag) {
case "name":
echo "<a href='";
$titulo = $data;
break;
case "url":
echo $data;
//echo "<a href='".$data."'>";
break;
case "type":
$type = $data;
// como es el ultimo parametro en ser leido escribimos los datos y vaciamos las variables
echo "'>".$titulo." <img src='".$path_imgs.$type."'></a>";//."<img src='".$path_imgs.$type."'></a>";
$titulo="";
$url="";
$type="";
break;
default:
break;
}
}
# abrir fichero XML
if (!($fp = fopen($file, "r"))) {
die("No se puede leer el archivo xml: $file");
}
# leer y parsear el xml
while ($data = fread($fp, 4096)) {
# manejador de errores
if (!xml_parse($xmlParser, $data, feof($fp))) {
die(sprintf("XML error: %s en la linea %d",
xml_error_string(xml_get_error_code($xmlParser)),
xml_get_current_line_number($xmlParser)));
xml_parser_free($xmlParser);
}
}
# librerar el parseador
xml_parser_free($xmlParser);
?>