Foros del Web » Programando para Internet » PHP »

Mostrar datos xml en un archivo php

Estas en el tema de Mostrar datos xml en un archivo php en el foro de PHP en Foros del Web. Hola amigos, tengo esta url http://www.google.co.uk/ig/api?weather=adeje,CN en la que me muestra datos en un xml. Bien necesito mostrar estos datos, en un archivo php. He ...
  #1 (permalink)  
Antiguo 19/07/2009, 09:04
Avatar de adexedl  
Fecha de Ingreso: julio-2005
Mensajes: 326
Antigüedad: 18 años, 9 meses
Puntos: 2
Mostrar datos xml en un archivo php

Hola amigos,

tengo esta url

http://www.google.co.uk/ig/api?weather=adeje,CN

en la que me muestra datos en un xml. Bien necesito mostrar estos datos, en un archivo php.

He buscado información por la red, pero no he dado con nada específico para esto.

Saludos y gracias de antemano.
__________________
Diseño Web Canarias
  #2 (permalink)  
Antiguo 19/07/2009, 09:15
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mostrar datos xml en un archivo php

mmm...


para leer la URL, puedes usar CURL o un simple file_get_contents()

¿para cargar y parsear el XML??

revisa la siguiente extensión de PHP
http://php.net/simple_xml


--
recuerda que no existe algo especifico para cada cosa... muchas veces hay que usar nuestra creatividad e ingenio, no todo ya esta hecho... no hay funciones mágicas!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 19/07/2009, 09:55
Avatar de adexedl  
Fecha de Ingreso: julio-2005
Mensajes: 326
Antigüedad: 18 años, 9 meses
Puntos: 2
Respuesta: Mostrar datos xml en un archivo php

Gracias por tu ayuda,

he encontrado ejemplos pero son para un archivo, del tipo:

Código HTML:
<?php
$source = 'sitemap.xml';

// load as string
$xmlstr = file_get_contents($source);
$sitemap1 = simplexml_load_string($xmlstr);

// load as file
$sitemap2 = simplexml_load_file($source);
?> 
pero para hacerlo de una url no encuentro ejemplos.

Gracias nuevamente
__________________
Diseño Web Canarias
  #4 (permalink)  
Antiguo 19/07/2009, 10:45
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mostrar datos xml en un archivo php

Cita:
Iniciado por pateketrueke Ver Mensaje
[...] para leer la URL, puedes usar CURL o un simple file_get_contents() [...]



file_get_contents() sirve tanto como URLs con archivos....
http://php.net/file_get_contents
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 19/07/2009, 11:20
Avatar de adexedl  
Fecha de Ingreso: julio-2005
Mensajes: 326
Antigüedad: 18 años, 9 meses
Puntos: 2
Respuesta: Mostrar datos xml en un archivo php

Hola nuevamente,

estoy intentandolo con file_get_contents y usando este código:

Código PHP:
<?php
$homepage 
file_get_contents('http://www.google.co.uk/ig/api?weather=adeje,CN');
echo 
$homepage;
?>
pero no lo consigo hacer correr.

Aquí tengo un ejemplo online.

http://www.eltiempoencanarias.com/test.php

Gracias nuevamente
__________________
Diseño Web Canarias
  #6 (permalink)  
Antiguo 19/07/2009, 11:45
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Mostrar datos xml en un archivo php

bueno, el error es claro...

la conexión supera el tiempo de espera... deberías usar otra alternativa, como sockets o CURL
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 19/07/2009, 13:53
 
Fecha de Ingreso: diciembre-2006
Mensajes: 153
Antigüedad: 17 años, 4 meses
Puntos: 1
Respuesta: Mostrar datos xml en un archivo php

Cita:
Iniciado por adexedl Ver Mensaje
Hola nuevamente,

estoy intentandolo con file_get_contents y usando este código:

Código PHP:
<?php
$homepage 
file_get_contents('http://www.google.co.uk/ig/api?weather=adeje,CN');
echo 
$homepage;
?>
pero no lo consigo hacer correr.

Aquí tengo un ejemplo online.

http://www.eltiempoencanarias.com/test.php

Gracias nuevamente
prueba con este codigo, solo tienes que crear un archivo: temp.xml vacio en la carpeta donde guardes el archivo xml.php y cuando lo ejecutes se copiara a tu servidor el archivo: http://www.google.co.uk/ig/api?weather=adeje,CN dentro del archivo temp.xml
de esa forma ,a lo mejor es mas facil leerlo localmente.

para que funcione te hace falta tener instalado curl.


xml.php
Código PHP:
<?php
$file 
"http://www.google.co.uk/ig/api?weather=adeje,CN";
$ch curl_init($file);
$fp = @fopen("temp.xml""w"); //genera un temporal en el servidor
curl_setopt($chCURLOPT_FILE$fp);
curl_setopt($chCURLOPT_HEADER0);
curl_exec($ch);
curl_close($ch);
fclose($fp); //se cierra una vez que se guardo el xml en el temporal del servidor
//aki ya depende de lo que se busquen, en este caso yo nada mas queria el clima
$file "temp.xml"//se abre el temp0oral que se acaba de guardar
$fp fopen($file"r");
$archivo=stream_get_contents($fp); //se convierte a estring
$num strpos($archivo"temp="); //simple funcion de posicion de un string especifico
$num+=6//muevo a los caracteres que necesito
$latemp=substr($archivo,$num,2); //obtengo el dato que buscaba
echo $latemp//muestro el resultado

?>
y luego tendrias que programar una tarea para que cada dia se ejecute el archivo y actualize temp.xml , o algo asi..
investiga un poco

saludos

espero que te sirva de algo...
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 19:44.