Comunidad de diseño web y desarrollo en internet online

Consulta, he creado un simple lector RSS

Citar            
MensajeEscrito el 26 Mar 2012 03:24 pm
He creado un pequeño lector de RSS en PHP con lo poco que se de PHP y con lo buscado en internet, pero me gustaria que me ayudaran a crearle un bucle y con limite para no tener que agregar listado de código para que lea los nodos del XML, ya que son varios.

Este es el código:

<?php

$earthquake= simplexml_load_file('http://earthquake.usgs.gov/earthquakes/catalogs/eqs7day-M5.xml');
$titledoc = $earthquake->channel->title;
$descriptiondoc = $earthquake->channel->description;
$linkdoc = $earthquake->channel->link;

$title1 = $earthquake->channel->item[0]->title;
$description1 = $earthquake->channel->item[0]->description;
$link1 = $earthquake->channel->item[0]->link;

$title2 = $earthquake->channel->item[1]->title;
$description2 = $earthquake->channel->item[1]->description;
$link2 = $earthquake->channel->item[1]->link;

$title3 = $earthquake->channel->item[2]->title;
$description3 = $earthquake->channel->item[2]->description;
$link3 = $earthquake->channel->item[2]->link;

$title4 = $earthquake->channel->item[3]->title;
$description4 = $earthquake->channel->item[3]->description;
$link4 = $earthquake->channel->item[3]->link;

$title5 = $earthquake->channel->item[4]->title;
$description5 = $earthquake->channel->item[4]->description;
$link5 = $earthquake->channel->item[4]->link;

$title6 = $earthquake->channel->item[5]->title;
$description6 = $earthquake->channel->item[5]->description;
$link6 = $earthquake->channel->item[5]->link;

$title7 = $earthquake->channel->item[6]->title;
$description7 = $earthquake->channel->item[6]->description;
$link7 = $earthquake->channel->item[6]->link;

$title8 = $earthquake->channel->item[7]->title;
$description8 = $earthquake->channel->item[7]->description;
$link8 = $earthquake->channel->item[7]->link;

$title9 = $earthquake->channel->item[8]->title;
$description9 = $earthquake->channel->item[8]->description;
$link9 = $earthquake->channel->item[8]->link;

$title10 = $earthquake->channel->item[9]->title;
$description10 = $earthquake->channel->item[9]->description;
$link10 = $earthquake->channel->item[9]->link;

$title11 = $earthquake->channel->item[10]->title;
$description11 = $earthquake->channel->item[10]->description;
$link11 = $earthquake->channel->item[10]->link;

echo $titledoc;
echo '<br>'.$descriptiondoc;
echo '<br>'.'<a href='.$linkdoc.'>Ir a página web</a>';
echo '<br>';
echo '<br>'.$title1;
echo '<br>'.$description1;
echo '<br>'.'<a href='.$link1.'>Ver Reporte</a>';
echo '<br>';
echo '<br>'.$title2;
echo '<br>'.$description2;
echo '<br>'.'<a href='.$link2.'>Ver Reporte</a>';
echo '<br>';
echo '<br>'.$title3;
echo '<br>'.$description3;
echo '<br>'.'<a href='.$link3.'>Ver Reporte</a>';
echo '<br>';
echo '<br>'.$title4;
echo '<br>'.$description4;
echo '<br>'.'<a href='.$link4.'>Ver Reporte</a>';
echo '<br>';
echo '<br>'.$title5;
echo '<br>'.$description5;
echo '<br>'.'<a href='.$link5.'>Ver Reporte</a>';
echo '<br>';
echo '<br>'.$title6;
echo '<br>'.$description6;
echo '<br>'.'<a href='.$link6.'>Ver Reporte</a>';
echo '<br>';
echo '<br>'.$title7;
echo '<br>'.$description7;
echo '<br>'.'<a href='.$link7.'>Ver Reporte</a>';
echo '<br>';
echo '<br>'.$title8;
echo '<br>'.$description8;
echo '<br>'.'<a href='.$link8.'>Ver Reporte</a>';
echo '<br>';
echo '<br>'.$title9;
echo '<br>'.$description9;
echo '<br>'.'<a href='.$link9.'>Ver Reporte</a>';
echo '<br>';
echo '<br>'.$title10;
echo '<br>'.$description10;
echo '<br>'.'<a href='.$link10.'>Ver Reporte</a>';
echo '<br>';
echo '<br>'.$title11;
echo '<br>'.$description11;
echo '<br>'.'<a href='.$link11.'>Ver Reporte</a>';
echo '<br>';
?>

Por mikjael

0 de clabLevel



 

chrome
Citar            
MensajeEscrito el 04 Abr 2012 05:43 pm
:o, rayos nunca vi algo asi :), bueno apenas empeizas en el mundo de programacion, recuerda que los bucles te salvaran en mas de una ocasion :)

Código PHP :

$earthquake= simplexml_load_file('http://earthquake.usgs.gov/earthquakes/catalogs/eqs7day-M5.xml');
$titledoc = $earthquake->channel->title;
$descriptiondoc = $earthquake->channel->description;
$linkdoc = $earthquake->channel->link;
echo $titledoc;
echo '<br>'.$descriptiondoc;
echo '<br>'.'<a href='.$linkdoc.'>Ir a página web</a>';

y las 2 formas de hacerlo

Código PHP :

//en el for le decimos que queremos ir del indice 0 al 10
for($i = 0 ;$i < 11 ;$i++)
{
   $title = $earthquake->channel->item[$i]->title;
   $description = $earthquake->channel->item[$i]->descripcion;
   $link = $earthquake->channel->item[$i]->link;
   echo '<br>';
   echo '<br>'.$title;
   echo '<br>'.$description;
   echo '<br>'.'<a href='.$link.'>Ver Reporte</a>';
}

y la mejor forma de hacerlo

Código PHP :

$i = 0;
foreach($earthquake->channel->item as $item)
{
   //controlamos el bucle y en caso de que se pase el contador lo quebramos
   if($i > 10){break;}
   echo '<br>';
   echo '<br>'.$item->title;
   echo '<br>'.$item->description;
   echo '<br>'.'<a href='.$item->link.'>Ver Reporte</a>';
}


:), aqui entre nos, dime tu pregunta era alguna forma de broma?? ejejje

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 04 Abr 2012 07:35 pm
ejej espero no jhagas copy paste por que le vi un error , ejej un detallito que se me fue en el bucle de foreach , haber si vees que es y lo arreglas :)

Por tuadmin

Claber

598 de clabLevel



Genero:Masculino  

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.