Ver Mensaje Individual
  #11 (permalink)  
Antiguo 06/05/2011, 13:08
IEKK
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 14 años, 3 meses
Puntos: 202
Respuesta: Como mostrar los meses

Que jaleo de código.
No soy amante de usar millones de if()

Esto te serviría para mostrar los meses que coinciden con respecto a tu tabla.
Si no me equivoco es lo que NO quieres. Pero así aprendes a reducir código y después te pongo lo que necesitas.

Código PHP:
<?php
$meses 
= array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio""Agosto","Septiembre","Octubre","Noviembre","Diciembre");    
$consulta_mes "SELECT mes FROM expedientes";
$sql_mes mysql_query($consulta_mes);
        
// Mostrar los mismos meses
while ($row_mes mysql_fetch_assoc($sql_mes))
{
    
$mes=$meses[$row_mes['mes']-1];
    echo
'<option value="'.$mes.'">'.$mes.'</option>';   
}
?>
Supongo que esto es lo que pides, mostrar los meses que no sean los que están en la base de datos.

Código PHP:
<?php
$selec 
= array();
$meses = array("Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio""Agosto","Septiembre","Octubre","Noviembre","Diciembre");    
$consulta_mes "SELECT mes FROM expedientes";
$sql_mes mysql_query($consulta_mes);

//Mostrar los meses que no están
while ($row_mes mysql_fetch_assoc($sql_mes))
    
$selec[]=$meses[$row_mes['mes']-1];

$mes array_diff($meses$selec);

foreach (
$mes as $i => $value)
    echo
'<option value="'.$mes[$i].'">'.$mes[$i].'</option>'
?>
No sé, pero yo prefiero usar arrays y sus correspondientes funciones para acortar el código y que sea más legible aparte de más corto.
En cualquier caso tu fallo era de planteamiento.

Y dejo esto aquí por si no entiendes la función. http://www.php.net/manual/es/ref.array.php

Un saludo.
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(