Foros del Web » Programando para Internet » PHP »

Unir valores de listas de seleccion e insertarlo en BD

Estas en el tema de Unir valores de listas de seleccion e insertarlo en BD en el foro de PHP en Foros del Web. Hola desde hace tiempo he estado viendo como puedo colocar en mi formulario la fecha en listas de seleccion y guardarlas en el orden que ...
  #1 (permalink)  
Antiguo 26/07/2010, 12:04
 
Fecha de Ingreso: julio-2009
Mensajes: 77
Antigüedad: 15 años, 4 meses
Puntos: 0
Unir valores de listas de seleccion e insertarlo en BD

Hola desde hace tiempo he estado viendo como puedo colocar en mi formulario la fecha en listas de seleccion y guardarlas en el orden que requiere mysql luego sacarla mostrarla en un formulario en formato español, hice un select sencillo "nada comparable con el de Cluster" y por eso lo adapte a lo que necesito pero ahora tengo un inconveniente:
1. Como uno los campos de las 3 listas de seleccion y las guardo inserto en mi registro que se llama fecha de tipo date en mysql.
2. como puedo colocarle a los meses 01,02, etc. al contador que creo Cluster, pues le puse cero y no lo toma?
Código PHP:
<?php
$fecha_dia 
date ("d");
$fecha_mes date ("m");
$fecha_year date ("Y");

echo 
"<select name=\"dia\">\n";
for (
$contador=1$contador <=31$contador++){
if (
$fecha_dia==$contador){
 echo 
"<option value=\"".$contador."\" selected>".$contador."\n";
  }else{
 echo 
"<option value=\"".$contador."\">".$contador."\n";
   }
}
echo 
"</select>\n";
echo 
"<select name=\"mes\">\n";
for (
$contador=01$contador <=12$contador++){
if (
$fecha_mes==$contador){
echo 
"<option value=\"".$contador."\" selected>".$contador."\n";
}else{
echo 
"<option value=\"".$contador."\">".$contador."\n";
}
}
echo 
"</select>\n";
echo 
"<select name=\"year\">\n";
for (
$contador=2005$contador <=2025$contador++){
if (
$fecha_year==$contador){
echo 
"<option value=\"".$contador."\" selected>".$contador."\n";
}else{
echo 
"<option value=\"".$contador."\">".$contador."\n";
}
}
echo 
"</select>\n";
?>
Les cuento que llevo mucho tiempo queriendo hacer esta funcioncita y he visto a muchas personas que dan las gracias por el aporte que les sirvio y no se que hago mal o no entiendo que yo no logro hacer esto, no es que quiere que me lo hagan pero de verdad no logro guardarlo en la BD.
  #2 (permalink)  
Antiguo 26/07/2010, 12:36
Avatar de JordyRCC  
Fecha de Ingreso: julio-2010
Ubicación: En una cabaña, rodeado de contraseñas encriptadas en md5
Mensajes: 19
Antigüedad: 14 años, 4 meses
Puntos: 0
Respuesta: Unir valores de listas de seleccion e insertarlo en BD

A tu primera pregunta no puedo contestarte, nunca he trabajado en bases de datos con un campo marcado como date. Todos los campos de fechas los barajo por separado como int o todos juntos como varchar.

Para unir campos de una lista de selección solo habría que encadernlos con puntos (.), pero no tengo la menor idea de como lo trabaja un date. Puedes guiarte un poco con este ejemplo.

Código PHP:
Ver original
  1. <?php
  2. $fecha_entera=$_POST['seleccion1'].'/'.$_POST['seleccion2'].'/'.$_POST['seleccion3'];
  3. /* Ejemplo de encadenación de variables para hacer una fecha */
  4. ?>

Sobre agregarle un cero, es relativamente fácil, solo hay que comprobar que cuando el número del mes sea inferior a 10, añadirle un cero como string de relleno. Y aquí tu código para que esto funcione:
Código PHP:
Ver original
  1. <?php
  2. $fecha_dia = date ("d");
  3. $fecha_mes = date ("m");
  4. $fecha_year = date ("Y");
  5.  
  6. echo "<select name=\"dia\">\n";
  7. for ($contador=1; $contador <=31; $contador++){
  8. if ($fecha_dia==$contador){
  9.  echo "<option value=\"".$contador."\" selected>".$contador."\n";
  10.   }else{
  11.  echo "<option value=\"".$contador."\">".$contador."\n";
  12.    }
  13. }
  14. echo "</select>\n";
  15. echo "<select name=\"mes\">\n";
  16. for ($contador=1; $contador <=12; $contador++){
  17.  
  18. if($contador<10){$ceroExtra="0";}else{$ceroExtra="";}
  19.  
  20. if ($fecha_mes==$contador){
  21. echo "<option value=\"".$contador."\" selected>".$ceroExtra.$contador."\n";
  22. }else{
  23. echo "<option value=\"".$contador."\">".$ceroExtra.$contador."\n";
  24. }
  25. }
  26. echo "</select>\n";
  27. echo "<select name=\"year\">\n";
  28. for ($contador=2005; $contador <=2025; $contador++){
  29. if ($fecha_year==$contador){
  30. echo "<option value=\"".$contador."\" selected>".$contador."\n";
  31. }else{
  32. echo "<option value=\"".$contador."\">".$contador."\n";
  33. }
  34. }
  35. echo "</select>\n";
  36. ?>

Supongo que es simple y fácil visto ahora.
Suerte con tu primera cuestión y tu programación.

Etiquetas: bd, listas, seleccion, unir
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 14:06.