Foros del Web » Programando para Internet » PHP »

como puedo hacer un listado de años ?

Estas en el tema de como puedo hacer un listado de años ? en el foro de PHP en Foros del Web. Buenas!!! sucede que me surge un detalle en una tarea que me han encargado pero no encuentro como solucionarlo este es un formulario que toma ...
  #1 (permalink)  
Antiguo 22/11/2009, 23:05
 
Fecha de Ingreso: abril-2003
Ubicación: Mexico
Mensajes: 604
Antigüedad: 21 años
Puntos: 23
Pregunta como puedo hacer un listado de años ?

Buenas!!!

sucede que me surge un detalle en una tarea que me han encargado pero no encuentro como solucionarlo

este es un formulario que toma en cuenta nombre y edad pero esta la calcula basado en la fecha de nacimiento

esto funciona perfecto pero.... me piden que en el listado aparezca los años a partir del actual menos 6 años osea... que ahorita el maximo año que se pueda poner sea el 2003 pero en el 2010 sea el 2004

actualmente lo tengo puesto asi
Código PHP:
            <select name="anio">
                <
option value="año"Año</option>
                <
option value="1960"1960</option>
                <
option value="1961"1961</option>
                <
option value="1962"1962</option>
                <
option value="1963"1963</option>
                <
option value="1964"1964</option>
                <
option value="1965"1965</option>
                <
option value="1966"1966</option>
                <
option value="1967"1967</option>
                <
option value="1968"1968</option>
                <
option value="1969"1969</option>
                <
option value="1970"1970</option>
                <
option value="1971"1971</option>
                <
option value="1972"1972</option>
                <
option value="1973"1973</option>
                <
option value="1974"1974</option>
                <
option value="1975"1975</option>
                <
option value="1976"1976</option>
                <
option value="1977"1977</option>
                <
option value="1978"1978</option>
                <
option value="1979"1979</option>
                <
option value="1980"1980</option>
                <
option value="1981"1981</option>
                <
option value="1982"1982</option>
                <
option value="1983"1983</option>
                <
option value="1984"1984</option>
                <
option value="1985"1985</option>
                <
option value="1986"1986</option>
                <
option value="1987"1987</option>
                <
option value="1988"1988</option>
                <
option value="1989"1989</option>
                <
option value="1990"1990</option>
                <
option value="1991"1991</option>
                <
option value="1992"1992</option>
                <
option value="1993"1993</option>
                <
option value="1994"1994</option>
                <
option value="1995"1995</option>
                <
option value="1996"1996</option>
                <
option value="1997"1997</option>
                <
option value="1998"1998</option>
                <
option value="1999"1999</option>
                <
option value="2000"2000</option>
                <
option value="2001"2001</option>
                <
option value="2002"2002</option>
                <
option value="2003"2003</option>
                </
select
igual me piden que invierta el orden osea que sea de mayor a menor no como lo tengo actualmente

alguien que me pueda orientar??? se lo voy a agradecer

de antemano muchas Gracias!!!

un saludo!!!
__________________
¡El Respeto al Derecho Ajeno Es la Paz!
  #2 (permalink)  
Antiguo 22/11/2009, 23:09
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: como puedo hacer un listado de años ?

simple... usa las funciones de fecha y hora, por ej. date()

eso, para obtener el año actual... al cual fácilmente le puedes restar lo que quieras....

y con ello, usar un ciclo for() para crear el <select/>

simple, no??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 22/11/2009, 23:50
 
Fecha de Ingreso: abril-2003
Ubicación: Mexico
Mensajes: 604
Antigüedad: 21 años
Puntos: 23
Respuesta: como puedo hacer un listado de años ?

Buenas!!

Gracias por responder...

bueno simple... pues.. no, al menos para mi que estoy iniciando en esto del php

ya vi la funcion Date()
se me ocurre sacar el año

$anio=date("Y");

ese es el menor de mis problemas si solo fuera sacar el año porque simplemente le quitaria los 6 años que piden y listo

$limite=$anio-6;

de esa manera obtendria mi "inicio" ...
pero igual tengo que hacer el listado de por ejemplo 2003, 2002,2001, etc. y ahi es donde ya no se que hacer

mencionas el ciclo for() pero no lo conosco ni la manera de poder aplicarlo

haber si me explique...

de antemano gracias por la paciencia

un saludo!!!
__________________
¡El Respeto al Derecho Ajeno Es la Paz!
  #4 (permalink)  
Antiguo 22/11/2009, 23:57
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: como puedo hacer un listado de años ?

para todo, siempre es bueno que consultes el manual...
http://php.net/for
Código PHP:
for ($i 1990$i 2009$i += 1)
{
  echo 
$i '<br />';

__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #5 (permalink)  
Antiguo 23/11/2009, 00:36
 
Fecha de Ingreso: abril-2003
Ubicación: Mexico
Mensajes: 604
Antigüedad: 21 años
Puntos: 23
De acuerdo Respuesta: como puedo hacer un listado de años ?

Buenas!!

Gracias por la ayuda... ya casi lo logro pero... sigo sin lograr hacer el orden invertido

osea que el primer numero sea 2003 y de ahi para abajo

mi codigo esta quedando asi:

Código PHP:
<?
echo "año inicial : ".$anio1=date("Y")-60;
echo 
"año Final : ".$anio2=date("Y")-5;
?>
<select name="anio">
        <option value="año"> Año</option>
<?
for ($i $anio1$i $anio2$i+= 1)
?>
  <option value="<? echo $i ?>"> <? echo $i ?></option>" ;
<? }  ?>
</select>
ya eh invertido las variables y tambien le eh puesto $i +=-1 y $i -=1
y no logro mi proposito

alguna orientacion???

un saludo!!
__________________
¡El Respeto al Derecho Ajeno Es la Paz!
  #6 (permalink)  
Antiguo 23/11/2009, 02:42
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: como puedo hacer un listado de años ?

pues debes invertir toda la lógica...

tanto en el operador < como en la operación de incremento...

osea, ahora... no es mientras sea menor incrementas, ahora... es mientras sea mayor... decrementas!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #7 (permalink)  
Antiguo 23/11/2009, 08:39
 
Fecha de Ingreso: abril-2003
Ubicación: Mexico
Mensajes: 604
Antigüedad: 21 años
Puntos: 23
Respuesta: como puedo hacer un listado de años ?

Buenas!!!

Gracias por todo.... despues de todo lo logre gracias a tu ayuda...

Asunto Resuelto

al Final el codigo Quedo asi:

Código PHP:
            <select name="anio">
                <option value="año"> Año</option>
<? for ($i $anio2=date("Y")-6$i $anio1=date("Y")-60$i+= -1) { ?>
  <option value="<? echo $i ?>"> <? echo $i ?></option>" ;
<? }  ?>
                </select>
por si le sirve a alguien de orientacion....

un saludo!!
__________________
¡El Respeto al Derecho Ajeno Es la Paz!
  #8 (permalink)  
Antiguo 07/01/2014, 16:42
Avatar de ChamytoMx  
Fecha de Ingreso: abril-2013
Mensajes: 4
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: como puedo hacer un listado de años ?

Pues me ayudo bastante tu solucion, gracias :D
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 10:50.