Foros del Web » Programando para Internet » PHP »

Descartar años de un bucle for

Estas en el tema de Descartar años de un bucle for en el foro de PHP en Foros del Web. Hola amigos como estais, Vereis tengo este codigo que cuenta hacia atras desde un año hasta otro y los muestra en un select. echo '<select ...
  #1 (permalink)  
Antiguo 15/03/2011, 17:28
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Descartar años de un bucle for

Hola amigos como estais,

Vereis tengo este codigo que cuenta hacia atras desde un año hasta otro y los muestra en un select.


echo '<select name="fecha">';
echo '<option value="vacio">Eliga el año</option>';



for ($i=$anio; $i>=1950; $i--) {

if($i != "2010"){

echo "<option value='$i'>$i</option>";
}

}

echo '</select><br />';


y esta es la consulta que me dice los años que debo descartar para que no salgan en el select:


$consulta = mysql_query('SELECT * FROM cuotas WHERE Ngrupo = '.$_SESSION['Ngrupo'], $conexion);

while($array = mysql_fetch_array($consulta)){

$array['fecha'];

}


como vereis he incluido un if($i != "2010") que elimna el año 2010 pero lo que qiero es que me elimine todos los años que aparezcan en la consulta del sql, a ver si alguien sabe como se puede hacer esto.

Un saludo y gracias de ante mano amigos
  #2 (permalink)  
Antiguo 15/03/2011, 17:30
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Descartar años de un bucle for

Coloca el valor en un array, solo el valor del año y luego con in_array cada vez que recorras el for verificas si el valor que está en el for está dentro del array.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 15/03/2011, 17:36
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Respuesta: Descartar años de un bucle for

Hola amigo abimaelrc gracias por tu atencion,

Entiendo lo que qieres decir con el in_array, pero no se como guardar la fecha en un array, la fecha $array['fecha']; solo contiene el año nada de dias ni meses, entonces ya estarian guardados en $array['fecha']; no es asi?


Un saludo amigo y gracias de nuevo
  #4 (permalink)  
Antiguo 15/03/2011, 18:05
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 2 meses
Puntos: 81
Respuesta: Descartar años de un bucle for

Lo que dice abimaelrc es que pongas los datos en un array para que puedas compararlos con in_array()... o sea:
Código PHP:
Ver original
  1. $sql = "SELECT *
  2.         FROM cuotas
  3.         WHERE Ngrupo = '".$_SESSION['Ngrupo']."'";
  4. $consulta = mysql_query($sql);
  5. while($array = mysql_fetch_array($consulta)){
  6.     $anios[] = $array['fecha'];
  7. }
  8.  
  9. echo '
  10. <select name="fecha">
  11.     <option value="vacio">Seleccione el a&ntilde;o</option>';
  12. for ($i=date('Y'); $i>=1950; $i--){
  13.     if(!in_array($i, $anios)){
  14.         echo '<option value="'.$i.'">'.$i.'</option>';
  15.     }
  16. }
  17. echo '</select><br />';
Te hice unos pequeños ajustes al codigo.

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #5 (permalink)  
Antiguo 15/03/2011, 18:21
 
Fecha de Ingreso: marzo-2007
Mensajes: 751
Antigüedad: 17 años, 1 mes
Puntos: 4
Respuesta: Descartar años de un bucle for

Hola amigo Marvin,

efectivamente funciona muy bien, gracias alos dos amigos por vuestra atencion.

Un saludo y de nuevo gracias

Etiquetas: bucle
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:23.