Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Ciclo FOR hasta NULL

Estas en el tema de Ciclo FOR hasta NULL en el foro de PHP en Foros del Web. Junto con saludar, me gustaría que si alguien pudiese prestar ayuda con la siguiente problema Estoy haciendo una galería de imágenes la cual se llena ...
  #1 (permalink)  
Antiguo 09/12/2014, 11:59
 
Fecha de Ingreso: marzo-2014
Mensajes: 56
Antigüedad: 10 años, 1 mes
Puntos: 1
Ciclo FOR hasta NULL

Junto con saludar, me gustaría que si alguien pudiese prestar ayuda con la siguiente problema

Estoy haciendo una galería de imágenes la cual se llena con valores que vienen desde la base de datos, en cuya tabla se pueden poner hasta 25 imágenes (25 indices).

El tema que logre que en la galería solamente se muestren las imágenes que tengan algún valor en la base de datos con el siguiente código

Código PHP:
<?php
if ($row_consultanoticias['StrImagen21']  !=  NULL ) {
echo 
'<li><a href="#"><img src="img/tb/tb_' $row_consultanoticias["StrImagen1"] . '" data-large="img/' $row_consultanoticias["StrImagen1"] . '" /></a></li>';
}
?>
Como verán hacer este código imagen por imagen es bastante tedioso, mas si en el futuro se ponen mas de 25 imágenes. entonces se me ocurrió agregar un bucle

Código PHP:
<?php
$row_consulta
= array($row_consultanoticias["StrImagen"],$row_consultanoticias["Strimagen2"],$row_consultanoticias["StrImagen3"],$row_consultanoticias["StrImagen4"],$row_consultanoticias["StrImagen5"],$row_consultanoticias["StrImagen6"],$row_consultanoticias["StrImagen7"],$row_consultanoticias["StrImagen8"],$row_consultanoticias["StrImagen9"],$row_consultanoticias["StrImagen10"],$row_consultanoticias["StrImagen11"],$row_consultanoticias["StrImagen12"],$row_consultanoticias["StrImagen13"],$row_consultanoticias["StrImagen14"],$row_consultanoticias["StrImagen16"],$row_consultanoticias["StrImagen17"],$row_consultanoticias["StrImagen18"],$row_consultanoticias["StrImagen19"],$row_consultanoticias["StrImagen20"],$row_consultanoticias["StrImagen21"],$row_consultanoticias["StrImagen22"],$row_consultanoticias["StrImagen23"],$row_consultanoticias["StrImagen24"],$row_consultanoticias["StrImagen25"],);

for (
$i=0$i<count($row_consulta); $i++){

    echo  
'<li><a href="#"><img src="img/tb/tb_' $row_consulta[$i] . '" data-large="img/'$row_consulta[$i] . '" /></a></li>'
}

?>
El problema que este bucle tambien me trae los valores NULL y yo quiero que cuente solamente los campos que tienen valores en la base de datos,.
Se agradeceria su ayuda.

Gracias !
  #2 (permalink)  
Antiguo 09/12/2014, 12:04
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ciclo FOR hasta NULL

Podrías colocar una condición simple:
Código PHP:
Ver original
  1. if ($row_consulta[$i]) {
  2.   echo $row_consulta[$i];
  3. }
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 09/12/2014, 12:09
 
Fecha de Ingreso: marzo-2014
Mensajes: 56
Antigüedad: 10 años, 1 mes
Puntos: 1
Respuesta: Ciclo FOR hasta NULL

Cita:
Iniciado por pateketrueke Ver Mensaje
Podrías colocar una condición simple:
Código PHP:
Ver original
  1. if ($row_consulta[$i]) {
  2.   echo $row_consulta[$i];
  3. }
Te refieres que el codigo quede de esta manera ?

Código PHP:
<?php
$row_consulta
= array($row_consultanoticias["StrImagen"],$row_consultanoticias["Strimagen2"],$row_consultanoticias["StrImagen3"],$row_consultanoticias["StrImagen4"],$row_consultanoticias["StrImagen5"],$row_consultanoticias["StrImagen6"],$row_consultanoticias["StrImagen7"],$row_consultanoticias["StrImagen8"],$row_consultanoticias["StrImagen9"],$row_consultanoticias["StrImagen10"],$row_consultanoticias["StrImagen11"],$row_consultanoticias["StrImagen12"],$row_consultanoticias["StrImagen13"],$row_consultanoticias["StrImagen14"],$row_consultanoticias["StrImagen16"],$row_consultanoticias["StrImagen17"],$row_consultanoticias["StrImagen18"],$row_consultanoticias["StrImagen19"],$row_consultanoticias["StrImagen20"],$row_consultanoticias["StrImagen21"],$row_consultanoticias["StrImagen22"],$row_consultanoticias["StrImagen23"],$row_consultanoticias["StrImagen24"],$row_consultanoticias["StrImagen25"],);

for (
$i=0$i<count($row_consulta); $i++){

if (
$row_consulta[$i]) {
  echo  
'<li><a href="#"><img src="img/tb/tb_' $row_consulta[$i] . '" data-large="img/'$row_consulta[$i] . '" /></a></li>';
}

    


?>
  #4 (permalink)  
Antiguo 09/12/2014, 12:14
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ciclo FOR hasta NULL

Cita:
Te refieres que el codigo quede de esta manera ?
¿Podrías probar por ti mismo?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 09/12/2014, 12:18
 
Fecha de Ingreso: marzo-2014
Mensajes: 56
Antigüedad: 10 años, 1 mes
Puntos: 1
Respuesta: Ciclo FOR hasta NULL

Cita:
Iniciado por pateketrueke Ver Mensaje
¿Podrías probar por ti mismo?
Probé eso y no me funciono, lo insertare dentro del array para probar.
  #6 (permalink)  
Antiguo 09/12/2014, 12:27
 
Fecha de Ingreso: julio-2008
Mensajes: 56
Antigüedad: 15 años, 9 meses
Puntos: 2
Exclamación Respuesta: Ciclo FOR hasta NULL

Cita:
Iniciado por KalSmith Ver Mensaje
Probé eso y no me funciono, lo insertare dentro del array para probar.
Imprime var_dump($row_consulta[$i]); para ver que trae esa condición exactamente y nos dices para mejorar la instrucción
  #7 (permalink)  
Antiguo 09/12/2014, 12:34
 
Fecha de Ingreso: marzo-2014
Mensajes: 56
Antigüedad: 10 años, 1 mes
Puntos: 1
Respuesta: Ciclo FOR hasta NULL

Cita:
Iniciado por jglm210687 Ver Mensaje
Imprime var_dump($row_consulta[$i]); para ver que trae esa condición exactamente y nos dices para mejorar la instrucción
Me imprimio "null"
  #8 (permalink)  
Antiguo 09/12/2014, 12:37
 
Fecha de Ingreso: julio-2008
Mensajes: 56
Antigüedad: 15 años, 9 meses
Puntos: 2
Sonrisa Respuesta: Ciclo FOR hasta NULL

Cita:
Iniciado por KalSmith Ver Mensaje
Me imprimio "null"
entonces coloca:
Código PHP:
if ($row_consulta[$i] !=NULL) {
  echo  
'<li><a href="#"><img src="img/tb/tb_' $row_consulta[$i] . '" data-large="img/'$row_consulta[$i] . '" /></a></li>';

eso significa que si es diferente de null ejecute lo que esta dentro del if
  #9 (permalink)  
Antiguo 09/12/2014, 12:41
 
Fecha de Ingreso: marzo-2014
Mensajes: 56
Antigüedad: 10 años, 1 mes
Puntos: 1
Respuesta: Ciclo FOR hasta NULL

Cita:
Iniciado por jglm210687 Ver Mensaje
entonces coloca:
Código PHP:
if ($row_consulta[$i] !=NULL) {
  echo  
'<li><a href="#"><img src="img/tb/tb_' $row_consulta[$i] . '" data-large="img/'$row_consulta[$i] . '" /></a></li>';

eso significa que si es diferente de null ejecute lo que esta dentro del if

MUCHAS GRACIAS !!!! MUY AGRADECIDO.
Te pasaste gracias a ti y a pateketrueke por su ayuda.

MUY Agradecido de verdad !!!

Etiquetas: null, tabla
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 13:54.