Programación Web y Scripting > JavaScript

 Asignar Valor A Variable

<< < (3/3)

cesarc:
ok... mil disculpas, ahora soy yo quien no lo veia... pero, (tengo otra duda :-(  ) como manipulos si:

<input type="hidden" name="dia" value="0">
<input type="hidden" name="hora" value="0">

dia y hora son 2 campos en mi BD de tipo date y time, respectivamente...

Porque lo que le estoy pasando es:
<a onClick="nuevoEvento(1, 8)

¿¿¿????

Avalon:
En cada celda tienes que poner un enlace y pasarle unos valores distintos. Por ejemplo el lunes a las 8 pondrías esto


--- Código: Text ---&#60;a onClick=&#34;nuevoEvento(1, 8);&#34; style=&#34;cursor:hand&#34;&#62;&#60;u&#62;Añadir evento&#60;/u&#62;&#60;/a&#62; 

y el miércoles a las 16 esto


--- Código: Text ---&#60;a onClick=&#34;nuevoEvento(3, 16);&#34; style=&#34;cursor:hand&#34;&#62;&#60;u&#62;Añadir evento&#60;/u&#62;&#60;/a&#62; 


Y por otro lado aunque en el formulario hayas puesto esto


--- Código: Text ---&#60;input type=&#34;hidden&#34; name=&#34;dia&#34; value=&#34;0&#34;&#62;&#60;input type=&#34;hidden&#34; name=&#34;hora&#34; value=&#34;0&#34;&#62; 

la función nuevoEvento ya se encarga de asignar a los campos dia y hora los valores correspondientes.



--- Código: Text ---function nuevoEvento(dia, hora) {  document.eventos.dia.value = dia;  document.eventos.hora.value = hora;  document.eventos.submit();} 

Avalon:
No había leído esto  <_<


--- Citar ---dia y hora son 2 campos en mi BD de tipo date y time, respectivamente...
--- Fin de la cita ---


Entonces hay que cambiar lo anterior.

Se me ocurren 2 cosas que puedes hacer.

Primera opción

En lugar de pasarle a nuevoEvento el dia de la semana le pasas el dia del mes y además el mes y el año.


El 17 de marzo de 2005 a las 8 sería así


--- Código: Text ---&#60;a onClick=&#34;nuevoEvento(17, 3, 2005, 8);&#34; style=&#34;cursor:hand&#34;&#62;&#60;u&#62;Añadir evento&#60;/u&#62;&#60;/a&#62; 

Al formulario le añades 2 campos


--- Código: Text ---&#60;input type=&#34;hidden&#34; name=&#34;mes&#34; value=&#34;0&#34;&#62;&#60;input type=&#34;hidden&#34; name=&#34;anyo&#34; value=&#34;0&#34;&#62; 

y la función nuevoEvento quedaría así


--- Código: Text ---function nuevoEvento(dia, mes, anyo, hora) { document.eventos.dia.value = dia; document.eventos.mes.value = mes; document.eventos.mes.value = anyo; document.eventos.hora.value = hora; document.eventos.submit();} 


Segunda opción

Pasarle a nuevoEvento únicamente una marca de tiempo que obtienes en PHP con la función strtotime( fecha ). Por ejemplo para obtener la marca de tiempo del 17 de marzo de 2005 a las 8 sería así


--- Código: Text ---&#036;marca = strtotime(&#34;3/17/2005 8&#34;); 
y a la función nuevoEvento le pasarías únicamente esa marca de tiempo


--- Código: Text ---&#60;a onClick=&#34;nuevoEvento(1111042800);&#34; style=&#34;cursor:hand&#34;&#62;&#60;u&#62;Añadir evento&#60;/u&#62;&#60;/a&#62; 

En el formulario tendrías esto


--- Código: Text ---&#60;input type=&#34;hidden&#34; name=&#34;marca&#34; value=&#34;0&#34;&#62; 

y la función nuevoEvento sería así


--- Código: Text ---function nuevoEvento(marca) { document.eventos.marca.value = marca; document.eventos.submit();} 

Después desde PHP podrás obtener la fecha, el dia, la hora, etc... a partir de esa marca de tiempo mediante la función getdate ( marca );


En la primera opción quizá se ve un poco más claro los datos que estás enviando pero personalmente prefiero la segunda (la de la marca de tiempo).


Salu2,
Avalon

Navegación

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa