Foros del Web » Programando para Internet » PHP »

Varios calendarios en un mismo formulario?

Estas en el tema de Varios calendarios en un mismo formulario? en el foro de PHP en Foros del Web. Hola amigos, acabo de conseguir poner un calendario con javascript en mi web pero ahora lo que necesito es insertar mas de uno, eso es ...
  #1 (permalink)  
Antiguo 05/07/2009, 06:09
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Pregunta Varios calendarios en un mismo formulario?

Hola amigos, acabo de conseguir poner un calendario con javascript en mi web pero ahora lo que necesito es insertar mas de uno, eso es posible? y de ser que si como?

El calendario lo he cogido de aqui http://www.sectorweb.net/2007/05/07/...n-formularios/ por si quereis hecharle un vistazo.

A continuacion os enseño codigo:

calendario.html <--- aqui muestro el area del calendario

Código PHP:
<html>
<
head>
<
script language='javascript' src="popcalendar.js"></script> 
</head>
<body>
        <center> 
         <form name="form1" method="post" action="procesa.php">
           Calendario: <input name="fecha" type="text" id="dateArrival" onClick="popUpCalendar(this, form1.dateArrival, 'dd-mm-yyyy');" size="10"><br>
           <input type="submit" value="Enviar">
        </form>
          </center>
      
</html> 
procesa.php

Código PHP:
<?php

$fecha
=$_POST['fecha'];

$fechaExplode explode("-"$_POST["fecha"]);
$fechaParaInsertar date("Y-m-d"mktime(0,0,0,$fechaExplode[1], $fechaExplode[0], $fechaExplode[2]));

echo 
$fechaParaInsertar;

?>

Última edición por rompeguesos; 05/07/2009 a las 06:17 Razón: inserto el codigo que utilizo
  #2 (permalink)  
Antiguo 05/07/2009, 09:43
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 3 meses
Puntos: 1
Respuesta: Varios calendarios en un mismo formulario?

Saludos

Creo que con insertar algo así sería suficiente:

Código:
<form name="form1" method="post" action="procesa.php"> 
 Calendario 1: <input name="fecha" type="text" id="dateArrival" onClick="popUpCalendar(this, form1.dateArrival, 'dd-mm-yyyy');" size="10">
<br>
Calendario 2: <input name="fecha_2" type="text" id="dateArrival_2" onClick="popUpCalendar(this, form1.dateArrival_2, 'dd-mm-yyyy');" size="10">
<br>
<input type="submit" value="Enviar"> 
 </form>
Pruebalo y nos cuentas.

Suerte
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.
  #3 (permalink)  
Antiguo 05/07/2009, 09:50
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Pregunta Respuesta: Varios calendarios en un mismo formulario?

Muchas gracias Jose Molina pero aqui dandoles vuelta al final lo consegui casi casi tal como tu me lo has dicho mira lo llevo asi y me funciona bien de momento :D

Código PHP:
<html>
<
head>
<
script language='javascript' src="popcalendar.js"></script> 
</head>
<body>
        <center> 
         <form name="form1" method="post" action="procesa.php">
           Calendario: <input name="fecha" type="text" id="dateArrival" onClick="popUpCalendar(this, form1.dateArrival, 'dd-mm-yyyy');" size="10"><br><br>
           
           Calendario2: <input name="fecha2" type="text" id="dateArrival2" onClick="popUpCalendar(this, form1.dateArrival2, 'dd-mm-yyyy');" size="10"><br><br>
                              
          Calendario3: <input name="fecha3" type="text" id="dateArrival3" onClick="popUpCalendar(this, form1.dateArrival3, 'dd-mm-yyyy');" size="10"><br><br>
           <input type="submit" value="Enviar">
        </form>
          </center>
      
</html> 
Ahora lo que me gustaria que me corrijais si el php lo llevo bien tal como lo llevo:

Código PHP:
<?php

$fecha
=$_POST['fecha'];
$fecha2=$_POST['fecha2'];
$fecha3=$_POST['fecha3'];

$fechaExplode explode("-"$_POST["fecha"]);
$fechaParaInsertar date("Y-m-d"mktime(0,0,0,$fechaExplode[1], $fechaExplode[0], $fechaExplode[2]));

$fechaExplode explode("-"$_POST["fecha2"]);
$fechaParaInsertar2 date("Y-m-d"mktime(0,0,0,$fechaExplode[1], $fechaExplode[0], $fechaExplode[2]));

$fechaExplode explode("-"$_POST["fecha3"]);
$fechaParaInsertar3 date("Y-m-d"mktime(0,0,0,$fechaExplode[1], $fechaExplode[0], $fechaExplode[2]));

echo 
$fechaParaInsertar."<br><br>";
echo 
$fechaParaInsertar2."<br><br>";
echo 
$fechaParaInsertar3."<br><br>";

?>
mas o menos seria algo asi?
  #4 (permalink)  
Antiguo 05/07/2009, 10:28
Avatar de José Molina  
Fecha de Ingreso: enero-2002
Ubicación: USA
Mensajes: 768
Antigüedad: 22 años, 3 meses
Puntos: 1
Respuesta: Varios calendarios en un mismo formulario?

Saludos

Que bien!!

Si son muchos campos de fecha sería interesante que los colocaras dentro de un FOR, para optimizar.

Suerte
__________________
José Molina
La marginalidad no esta en la incapacidad de calmar el hambre de un estómago sino en la incapacidad de calmar el hambre de la mente.
  #5 (permalink)  
Antiguo 05/07/2009, 10:32
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Varios calendarios en un mismo formulario?

van a ser 5 campos de fechas pero ahora mismo me qedao bloqeado.... ¿podrias darme una idea?, mira ahora lo que quiero es que para poder rellenar el campo fecha 2 tengas que tener escrito el campo fecha 1, que para poder rellenar el campo fecha 3 tengas que haber rellenado el 2 y asi susecivamente... como he de hacerlo?
  #6 (permalink)  
Antiguo 05/07/2009, 11:10
Avatar de acoevil  
Fecha de Ingreso: julio-2008
Ubicación: localhost/colombia/sevillaValle.php
Mensajes: 1.123
Antigüedad: 15 años, 8 meses
Puntos: 32
Respuesta: Varios calendarios en un mismo formulario?

puedes utilizar javascript en este caso para lograr el objetivo..

Digamos que tienes el sgte select


<select id="opciones" name="opciones">
<option value="0">Selecciona algun valor</option>
<option value="1">Primer valor</option>
<option value="2">Segundo valor</option>
<option value="3">Tercer valor</option>
<option value="4">Cuarto valor</option>
</select>


Ahora solo tienes que comprobar que el usuario haya seleccionado una opcion que se a diferente de 0.

// Obtener la referencia a la lista
var lista = document.getElementById("opciones");

// Obtener el índice de la opción que se ha seleccionado
var indiceSeleccionado = lista.selectedIndex;

// Con el índice y el array "options", obtener la opción seleccionada
var opcionSeleccionada = lista.options[indiceSeleccionado];

// Obtener el valor y el texto de la opción seleccionada

var textoSeleccionado = opcionSeleccionada.text;
var valorSeleccionado = opcionSeleccionada.value;


De esta manera ya tendriamos el valor y el texto seleccionado por el usuario ahora solo haces una condicion donde siga

if ( valorSeleccionado != 0 ){

alert ("bien");

} else {

alert("Asegurate de seleccionar una opcion diferente.");

}


Ahora ya sabes como saber si selecciono una opcion del select ahora lo que toca hacer es una condicion si selecciono un elemento del primer select que se activa el segundo y asi sucesivamente..

Espero te sirva...


Aqui puede encontrar mas informacion sobre formularios y Js

http://www.librosweb.es/javascript/c...rmularios.html
  #7 (permalink)  
Antiguo 05/07/2009, 12:28
Avatar de rompeguesos  
Fecha de Ingreso: marzo-2009
Mensajes: 692
Antigüedad: 15 años, 1 mes
Puntos: 8
Respuesta: Varios calendarios en un mismo formulario?

ya he encontrao el modo de hacerlo con php, mira lo he asi espero vuestra opinion, mas o menos la que e completao es la variable primera $fecha nada mas ahora ire completando las demas:

Código PHP:
<?php
//Conexion a base de datos
include("../usuarios/reg/config.php");

$fecha=$_POST['fecha'];
$fecha2=$_POST['fecha2'];
$fecha3=$_POST['fecha3'];
$fecha4=$_POST['fecha4'];
$fecha5=$_POST['fecha5'];

if(
$fecha){
//cambiar fecha a mysql
$fechaExplode explode("-"$_POST["fecha"]);
$fechaParaInsertar date("Y-m-d"mktime(0,0,0,$fechaExplode[1], $fechaExplode[0], $fechaExplode[2]));
// Comprobamos si el nombre de usuario o la cuenta de correo ya existían 
$checkguardia mysql_query("SELECT fechaguardias FROM fechasguardia WHERE fechaguardias='".mysql_real_escape_string($fechaParaInsertar)."'"); 
$guardia mysql_num_rows($checkguardia);

if (
$guardia>1) { 
echo 
"Esta fecha ya la usan 2 farmacias"
}else{

//Todo parece correcto procedemos con la inserccion 
$query "INSERT INTO fechasguardia (fechaguardias) VALUES('".mysql_real_escape_string($fechaParaInsertar)."')"
$registro=mysql_query($query) or die(mysql_error());
echo 
"Fecha 1ª insertada";

if(
$fecha2==TRUE){
//cambiar fecha a mysql
$fechaExplode explode("-"$_POST["fecha2"]);
$fechaParaInsertar2 date("Y-m-d"mktime(0,0,0,$fechaExplode[1], $fechaExplode[0], $fechaExplode[2]));
echo 
$fechaParaInsertar2."<br>";

if(
$fecha3==TRUE){
//cambiar fecha a mysql
$fechaExplode explode("-"$_POST["fecha3"]);
$fechaParaInsertar3 date("Y-m-d"mktime(0,0,0,$fechaExplode[1], $fechaExplode[0], $fechaExplode[2]));
echo 
$fechaParaInsertar3."<br>";

if(
$fecha4==TRUE){
//cambiar fecha a mysql
$fechaExplode explode("-"$_POST["fecha4"]);
$fechaParaInsertar4 date("Y-m-d"mktime(0,0,0,$fechaExplode[1], $fechaExplode[0], $fechaExplode[2]));
echo 
$fechaParaInsertar4."<br>";

if(
$fecha5==TRUE){
//cambiar fecha a mysql
$fechaExplode explode("-"$_POST["fecha5"]);
$fechaParaInsertar5 date("Y-m-d"mktime(0,0,0,$fechaExplode[1], $fechaExplode[0], $fechaExplode[2]));
echo 
$fechaParaInsertar5."<br>";
}
}
}
}
}
}

?>
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 10:44.