PHP - arrays y php

 
Vista:

arrays y php

Publicado por Roberto (2 intervenciones) el 17/03/2008 18:22:39
Hola, tengo un problema que me esta volviendo loco (si es que ya no lo hizo), resulta que tengo un simple array, la idea es recorrerlo como sea (foreach, for, while, etc...) e imprimir una tabla, asi de facil suena, pero yo no logro hacerlo, ya que no puedo recorrerlo, porque cuando lo hago, solo me termina imprimiendo el ultimo valor del array, aqui va el codigo:

for ($i = 1; $i <= 2; $i++) {
$html = "<table align='center' border='0' width='500'><tr>";
$html.= "<td width='185'>".$links[$i]['category']."</td>";
$html.= "<td align='center' width='185'><a href='".$links[$i]['reference']."'>".$links[$i]['link']."</a></td>";
$html.= "<td align='right' width='110'>".$links[$i]['name']."</td></tr></table>";
$html.= "<table align='center' border='0' width='500'><tr>";
$html.= "<td width='300'>".$links[$i]['description']."</td>";
$html.= "</tr></table>";
}
echo $html;

si hago print_r($links) obtengo lo siguiente:

"Array ( [1] => Array ( [category] => B [link] => C [name] => Roberto Krimer [description] => Este no es el B sino el C [reference] => cccccccc ) [2] => Array ( [category] => B [link] => D [name] => Ana Laura [description] => Este si es el D [reference] => dddddddd ) )"

la verdad he perdido todo el dia tratando de solucionar esto y no he podido, espero que alguien si pueda, desde ya un millon de gracias por su tiempo!!

Roberto.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:arrays y php

Publicado por Diego Romero (1450 intervenciones) el 18/03/2008 02:37:04
Tu problema, amigo mío, es la primera asignación que haces dentro del ciclo for, esta:
$html = "<table align='center' border='0' width='500'><tr>";

En el primer ciclo se concatena todo el html que le quieres concatenar peeeero en el segundo ciclo se reemplaza todo de nuevo perdiéndose lo anterior.

La solución sería esto:

$html = ""; // inicializar la variable
for ($i = 1; $i <= 2; $i++) {
$html .= "<table align='center' border='0' width='500'><tr>"; // nota la concatenación aquí.
(... resto del código... )
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:arrays y php

Publicado por Roberto (2 intervenciones) el 18/03/2008 05:41:27
Que taradoooo, tienes razon, ahora lo veo claro. Mil gracias!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar