Foros del Web » Programando para Internet » PHP »

Como mostrar los meses

Estas en el tema de Como mostrar los meses en el foro de PHP en Foros del Web. Bueno tengo una tabla llamada mes donde se va a guardar el numero correspondiente al mes, donde enero = 1, febrero = 2, etc entonces ...
  #1 (permalink)  
Antiguo 06/05/2011, 11:45
 
Fecha de Ingreso: octubre-2009
Mensajes: 125
Antigüedad: 15 años, 1 mes
Puntos: 2
Pregunta Como mostrar los meses

Bueno tengo una tabla llamada mes donde se va a guardar el numero correspondiente al mes, donde enero = 1, febrero = 2, etc


entonces lo ke kiero es mostrar una lista con los meses ke no esten dentro de la tabla

por ejemplo si ya se dió de alta enero y febrero (1,2) ke me muetres los demas meses

llevo esto


Código:
                   


       for ($x = 1; $x < 13; $x++) {


            $consulta_mes = "select mes from expedientes";
            $sql_mes = mysql_query($consulta_mes);


            while ($row_mes = mysql_fetch_array($sql_mes)) {

  

                if ($x !=  $row_mes[0]) {
                    
                    


                    if ($x == 1) {
                        $mes = 'Enero';

                    }
                    if ($x == 2) {
                        $mes = 'Febrero';
                    }
                    if ($x == 3) {
                        $mes = 'Marzo';
                    }
                    if ($x == 4) {
                        $mes = 'Abril';
                    }
                    if ($x == 5) {
                        $mes = 'Mayo';
                    }
                    if ($x == 6) {
                        $mes = 'Junio';
                    }
                    if ($x == 7) {
                        $mes = 'Julio';
                    }
                    if ($x == 8) {
                        $mes = 'Agosto';
                    }
                    if ($x == 9) {
                        $mes = 'Septiembre';
                    }
                    if ($x == 10) {
                        $mes = 'Octubre';
                    }
                    if ($x == 11) {
                        $mes = 'Noviembre';
                    }
                    if ($x == 12) {
                        $mes = 'Diciembre';
                    }


                }


            } //fin del while




?>  
          <option><?php echo "$mes"; ?></option>          
          
<?php

        } //fin del for
pero no me funciona

alguno sabrá como hacerlo????

salu2
  #2 (permalink)  
Antiguo 06/05/2011, 11:51
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 14 años, 1 mes
Puntos: 511
Respuesta: Como mostrar los meses

Cita:
Iniciado por devilboy9999 Ver Mensaje
Bueno tengo una tabla llamada mes donde se va a guardar el numero correspondiente al mes, donde enero = 1, febrero = 2, etc

pero no me funciona

alguno sabrá como hacerlo????

salu2
Como deseas mostrar el mes, si el valor para mostrar lo eliminas, checa con esto pruebalo y comenta


Código:
                   


       for ($x = 1; $x < 13; $x++) {


            $consulta_mes = "select mes from expedientes";
            $sql_mes = mysql_query($consulta_mes);


            while ($row_mes = mysql_fetch_array($sql_mes)) {

  

                if ($x !=  $row_mes[0]) {
                    
                    


                    if ($x == 1) {
                        $mes = 'Enero';

                    }
                    if ($x == 2) {
                        $mes = 'Febrero';
                    }
                    if ($x == 3) {
                        $mes = 'Marzo';
                    }
                    if ($x == 4) {
                        $mes = 'Abril';
                    }
                    if ($x == 5) {
                        $mes = 'Mayo';
                    }
                    if ($x == 6) {
                        $mes = 'Junio';
                    }
                    if ($x == 7) {
                        $mes = 'Julio';
                    }
                    if ($x == 8) {
                        $mes = 'Agosto';
                    }
                    if ($x == 9) {
                        $mes = 'Septiembre';
                    }
                    if ($x == 10) {
                        $mes = 'Octubre';
                    }
                    if ($x == 11) {
                        $mes = 'Noviembre';
                    }
                    if ($x == 12) {
                        $mes = 'Diciembre';
                    }


                }


       



?>  
          <option value="<?php echo $mes; ?>"><?php echo $mes; ?></option>          
          
<?php

        }  //fin del while
        }
//fin del for
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #3 (permalink)  
Antiguo 06/05/2011, 11:53
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 9 meses
Puntos: 155
Respuesta: Como mostrar los meses

a ver pruebale cambiando la cerrada del corchete del for


Código PHP:
Ver original
  1. } //muevelo aca
  2.  
  3. ?>  
  4.           <option><?php echo "$mes"; ?></option>          
  5.          
  6. <?php
  7.  
  8.         #} //estaba aqui
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #4 (permalink)  
Antiguo 06/05/2011, 11:56
 
Fecha de Ingreso: octubre-2009
Mensajes: 125
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Como mostrar los meses

No funciona man



y asi como lo tengo me muestra esto



teniendo en la tabla mes del 1 al 4
  #5 (permalink)  
Antiguo 06/05/2011, 12:03
Avatar de skiper0125  
Fecha de Ingreso: octubre-2010
Ubicación: $this->Mexico('Toluca');
Mensajes: 1.127
Antigüedad: 14 años, 1 mes
Puntos: 511
Respuesta: Como mostrar los meses



teniendo en la tabla mes del 1 al 4[/QUOTE]


checa esto lo modifique
Código PHP:
Ver original
  1. $consulta_mes = "select mes from expedientes";
  2. $sql_mes = mysql_query($consulta_mes);
  3.     while ($row_mes = mysql_fetch_array($sql_mes)) {
  4.        
  5.         if ($row_mes['mes'] == 1) {
  6.             $mes = 'Enero';
  7.         }
  8.        
  9.         if ($row_mes['mes']  == 2) {
  10.             $mes = 'Febrero';
  11.         }
  12.        
  13.         if ($row_mes['mes']  == 3) {
  14.             $mes = 'Marzo';
  15.         }
  16.        
  17.         if ($row_mes['mes']  == 4) {
  18.             $mes = 'Abril';
  19.         }
  20.        
  21.         if ($row_mes['mes']  == 5) {
  22.             $mes = 'Mayo';
  23.         }
  24.        
  25.         if ($row_mes['mes'] == 6) {
  26.              $mes = 'Junio';
  27.         }
  28.          
  29.         if ($row_mes['mes']  == 7) {
  30.             $mes = 'Julio';
  31.         }
  32.        
  33.         if ($row_mes['mes'] == 8) {
  34.             $mes = 'Agosto';
  35.         }
  36.        
  37.         if ($row_mes['mes'] == 9) {
  38.             $mes = 'Septiembre';
  39.         }
  40.        
  41.         if ($row_mes['mes'] == 10) {
  42.             $mes = 'Octubre';
  43.         }
  44.        
  45.         if ($row_mes['mes']  == 11) {
  46.             $mes = 'Noviembre';
  47.         }
  48.        
  49.         if ($row_mes['mes'] == 12) {
  50.             $mes = 'Diciembre';
  51.         }
  52.         ?>
  53.         <option value="<?php echo $mes?>"><?php echo $mes?></option>
  54.  
  55.  
  56.     }

Solo te mostrara los meses que tienes en tu tabla
__________________
Recuerda que estamos aquí para orientarte, y no para hacer tu trabajo.
Si mi aporte fue de ayuda, recuerda que agradecer no cuesta nada +1

Skiper0125
  #6 (permalink)  
Antiguo 06/05/2011, 12:05
 
Fecha de Ingreso: octubre-2009
Mensajes: 125
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Como mostrar los meses

Gracias man pero lo ke kiero es justamente lo opuesto



ke me muestre los meses ke no estén en mi tabla
  #7 (permalink)  
Antiguo 06/05/2011, 12:32
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 9 meses
Puntos: 155
Respuesta: Como mostrar los meses

Código PHP:
Ver original
  1. <?
  2.     $arr=array(1=>'Enero',2=> 'Febrero',3=>'Marzo',4=>'Abril',5=>'Mayo',6=>'Junio',7=>'Julio',8=>'Agosto',9=>'Septiembre',10=>'Octubre',11=>'Noviembre',12=>'Diciembre');
  3.             $consulta_mes = "select mes from expedientes";
  4.             $sql_mes = mysql_query($consulta_mes);
  5.  
  6.  
  7.             while ($row_mes = mysql_fetch_array($sql_mes)) {?>
  8.  
  9.                  <option><?php echo $arr[$row_mes[0]]; ?></option>  
  10.  
  11.      
  12.  
  13.  
  14.           <?  } //fin del while
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #8 (permalink)  
Antiguo 06/05/2011, 12:41
 
Fecha de Ingreso: octubre-2009
Mensajes: 125
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Como mostrar los meses

Cita:
Iniciado por mogurbon Ver Mensaje
Código PHP:
Ver original
  1. <?
  2.     $arr=array(1=>'Enero',2=> 'Febrero',3=>'Marzo',4=>'Abril',5=>'Mayo',6=>'Junio',7=>'Julio',8=>'Agosto',9=>'Septiembre',10=>'Octubre',11=>'Noviembre',12=>'Diciembre');
  3.             $consulta_mes = "select mes from expedientes";
  4.             $sql_mes = mysql_query($consulta_mes);
  5.  
  6.  
  7.             while ($row_mes = mysql_fetch_array($sql_mes)) {?>
  8.  
  9.                  <option><?php echo $arr[$row_mes[0]]; ?></option>  
  10.  
  11.      
  12.  
  13.  
  14.           <?  } //fin del while


con eso me muestra los meses ke tengo en la tabla pero kiero justo lo contrario

ke me muestre todos menos los ke tengo en la tabla
  #9 (permalink)  
Antiguo 06/05/2011, 12:47
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 9 meses
Puntos: 155
Respuesta: Como mostrar los meses

jajajajaja no pos no te capto la idea

a ver recorres un resultset, cuando pase por un mes , por ejemplo enero, que en este caso seria 1, quieres iterar los demas meses que no sean 1?
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #10 (permalink)  
Antiguo 06/05/2011, 12:50
 
Fecha de Ingreso: octubre-2009
Mensajes: 125
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Como mostrar los meses

Cita:
Iniciado por mogurbon Ver Mensaje
jajajajaja no pos no te capto la idea

a ver recorres un resultset, cuando pase por un mes , por ejemplo enero, que en este caso seria 1, quieres iterar los demas meses que no sean 1?


asi es

mira te explico


los meses son del 1 al 12

supongámos ke en mi tabla tengo agregados los meses 1,2,3,4

entonces en mi lista kiero ke me aparescan los demas meses del año sin contar los ke ya tengo

si ya tengo agregádos los meses 1,2,3,4, tons kiero ke me lista me muestre 5,6,7,8,9,10,11,12
  #11 (permalink)  
Antiguo 06/05/2011, 13:08
 
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... :(
  #12 (permalink)  
Antiguo 06/05/2011, 13:14
 
Fecha de Ingreso: octubre-2009
Mensajes: 125
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Como mostrar los meses

IEKK:

Muchas gracias man

es justo lo ke buscaba

gracias en vdd
  #13 (permalink)  
Antiguo 06/05/2011, 13:20
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 14 años, 3 meses
Puntos: 202
Respuesta: Como mostrar los meses

Cita:
Iniciado por devilboy9999 Ver Mensaje
IEKK:

Muchas gracias man

es justo lo ke buscaba

gracias en vdd
De nada, pero recuerda que aunque pone los meses que faltan y añade los restantes, tendrás que ordenar el array.
Si el primer campo de tu tabla es Marzo, el primer mes que se mostrará, será ese y no Enero. Tenlo en cuenta a la hora de listarlo. Te falta hacer eso ^^ no te lo iba a hacer todo jeje.

__________________
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... :(
  #14 (permalink)  
Antiguo 06/05/2011, 13:28
 
Fecha de Ingreso: octubre-2009
Mensajes: 125
Antigüedad: 15 años, 1 mes
Puntos: 2
Respuesta: Como mostrar los meses

Cita:
Iniciado por IEKK Ver Mensaje
De nada, pero recuerda que aunque pone los meses que faltan y añade los restantes, tendrás que ordenar el array.
Si el primer campo de tu tabla es Marzo, el primer mes que se mostrará, será ese y no Enero. Tenlo en cuenta a la hora de listarlo. Te falta hacer eso ^^ no te lo iba a hacer todo jeje.



lo se, me di cuenta man

ya eso es lo de menos

pero me ayudaste mucho en vdd grax y gracias a todos

Etiquetas: meses
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 16:06.