En primer lugar vamos a mostrar una lista de nombres de proyectos usando los tags <ul> y <li> de html, es decir una lista no ordenada.
En el código php debemos parsear el documento XML y a continuación construir la lista en un bucle:
<?php
$xml = simplexml_load_file("portfolio.xml") or die("feed not loading");
print_r($xml); //solo para ver que hay
?>
<html>
<head>
<title>Mi portfolio</title>
</head>
<body>
<h1>Mi portfolio</h1>
<ul>
<?php
//mostrar la lista de proyectos
foreach($xml->project as $project){
print "<li>".$project->name."</li>";
}
?>
</ul>
</body>
</html>
A partir de ese paso podemos añadir toda la información que queramos, como por ejemplo la imagen miniatura:
print "<li>"; print "<img src='".$project->thumb."'/>"; print $project->name."</li>\n";
La 'gracia' es combinar el código php con las marcas de html, es decir construir el html mediante php.
Para concatenar strings (cadenas de texto) en php usamos el simbolo '.' (un punto)
Sofisticando un poco más el ejemplo queremos que al clicar en un proyecto nos lleve a una pagina nueva, por ejemplo detalle.php, donde se mostrará toda la información del proyecto.
Esta página detalle.php será la misma para todos los proyectos, pero pasaremos en la url el parámtro que indicará cual de los proyectos es el que queremos mostrar, de la siguiente manera:
detalle.php?id=2
Esto es lo que se llama en HTML pasar una variable por GET
El primer paso es construir el link en cada uno de los elementos.
print "<a href='detalle.php?id=".$i."'>";
Después creamos el archivo detalle.php.
Para "recoger" el parámetro id usamos la siguiente instrucción:
$id=$_GET['id'];
Como vamos a usar este valor como un índice numérico en un array debemos convertirlo a un entero:
$id=(int)($_GET['id']);
La página detalle completa podria ser así:
<?php
$xml = simplexml_load_file("portfolio.xml") or die("feed not loading");
$id=(int)($_GET['id']); //es necesario convertir el string a un número
$myproject=$xml->project[$id];
//print_r($myproject);
?>
<html>
<head>
<title>
<?php print $myproject->name ?>
</title>
</head>
<body>
<div id='content'>
<h1><?php print $myproject->name ?></h1>
<div id='desc'>
<?php print $myproject->desc ?>
</div>
<div id='foto'>
<img src='<?php print $myproject->image ?>'/>
</div>
</div>
</body>
</html>
| Adjunto | Tamaño |
|---|---|
| xml_php_portfolio.zip | 596.92 KB |
Comentarios
jMwbvkc Buy Tramadol Ambien
Mié, 02/24/2010 - 23:13 — ewkfoXjMwbvkc Buy Tramadol Ambien Buy Xanax Buy Ativan Buy Viagra
KreLUq Buy Cialis Cheap
Mar, 02/23/2010 - 19:20 — ewkfoXKreLUq Buy Cialis Cheap Phentermine Buy Viagra Cheap Valium Cheap Ativan
epmGLbY Cheap Ativan Buy
Sáb, 02/20/2010 - 23:40 — ewkfoXepmGLbY Cheap Ativan Buy Ambien Cheap Xanax Buy Phentermine Valium
kKQHrl Buy Viagra online
Vie, 02/19/2010 - 23:49 — ewkfoXkKQHrl Buy Viagra online Cheapest Cialis Cialis Buy Viagra online Viagra Phentermine
SWHTmdDi Buy Valium
Vie, 02/19/2010 - 04:43 — ewkfoXSWHTmdDi Buy Valium Phentermine Buy Viagra online Buy Ambien Cheap Ativan Xanax
THQdTtG Buy Cialis Xanax
Mié, 02/17/2010 - 21:25 — ewkfoXTHQdTtG Buy Cialis Xanax Ativan Valium Ambien Phentermine
vGQcRf Buy Cialis Phentermine
Mar, 02/16/2010 - 22:58 — ewkfoXvGQcRf Buy Cialis Phentermine Xanax Buy Ambien Ativan Valium
aQbpOml cbUzDxu
Sáb, 02/13/2010 - 21:03 — ewkfoXaQbpOml cbUzDxu
Enviar un comentario nuevo