Foros del Web » Programando para Internet » PHP »

JavaScript en PHP

Estas en el tema de JavaScript en PHP en el foro de PHP en Foros del Web. Hola miren tengo un problema. En JSCalendar los dias(%d) mes(%m) y año(%Y) se indican así(como he puesto en los parentesis) Entonces en un campo tipo ...
  #1 (permalink)  
Antiguo 06/08/2010, 07:04
 
Fecha de Ingreso: diciembre-2009
Ubicación: España
Mensajes: 380
Antigüedad: 10 años
Puntos: 1
Exclamación

Hola miren tengo un problema.
En JSCalendar los dias(%d) mes(%m) y año(%Y) se indican así(como he puesto en los parentesis)
Entonces en un campo tipo text pone(por ejemplo) 20/08/2010.
Pero como podria hacer para insertarlo en la base de datos, el dia en dia, el mes en mes y el año en año?
Porque podría insertarlo(hasta donde yo se) en un campo todo, pero no separado.
Dejo el código:
Cita:
<html style="background-color: buttonface; color: buttontext;">

<head>
<meta http-equiv="content-type" content="text/xml; charset=utf-8" />

<title>Simple calendar setups [popup calendar]</title>

<!-- calendar stylesheet -->
<link rel="stylesheet" type="text/css" media="all" href="calendar-win2k-cold-1.css" title="win2k-cold-1" />

<!-- main calendar program -->
<script type="text/javascript" src="calendar.js"></script>

<!-- language for the calendar -->
<script type="text/javascript" src="lang/calendar-es.js"></script>

<!-- the following script defines the Calendar.setup helper function, which makes
adding a calendar a matter of 1 or 2 lines of code. -->
<script type="text/javascript" src="calendar-setup.js"></script>

</head>

<body>
<form action="#" method="get">
<input name="date" type="text" id="f_date_f" readonly="readonly" /><br>
<input type="reset" id="show_f" value=" ... "
onclick="return showCalendar('sel3', '%d/%m/%Y');">
</form>




<script type="text/javascript">
Calendar.setup({
inputField : "f_date_f", // id of the input field
ifFormat : "%d/%m/%Y", // format of the input field (even if hidden, this format will be honored)
displayArea : "show_f", // ID of the span where the date is to be shown
daFormat : "%A, %B %d, %Y",// format of the displayed date
align : "Tl", // alignment (defaults to "Bl")
dateStatusFunc : function (date) { // disable weekend days (Saturdays == 6 and Subdays == 0)
var today = new Date();
//alert(today.getTime());
return (
date.getDay() == 7 || (date.getTime() < today.getTime()-(1*24*60*60*1000) || date.getTime() > today.getTime()+(730*24*60*60*1000))

) ? true : false; }
});
</script>


</body>
</html>
y por cierto gracias adelantadas

Última edición por GatorV; 06/08/2010 a las 09:40
  #2 (permalink)  
Antiguo 06/08/2010, 09:05
Avatar de pepeverastegui  
Fecha de Ingreso: septiembre-2008
Ubicación: Pedernales, Michoacan
Mensajes: 82
Antigüedad: 11 años, 2 meses
Puntos: 2
Respuesta: JavaScript en PHP

ps a lo que entendi es sencillo trata separando mediante substr

Código PHP:
<?php
$fecha 
"06/08/2010";

// $dia = 06
$dia   substr($fecha02);

// $mes = 08
$mes substr($fecha32);

// $anio = 2010
$anio substr($fecha64);

$fecha_mysql $anio "-" $mes "-" $dia;

mysql_query("INSERT INTO tabla(dia, mes, anio, fecha) VALUES('$dia', '$mes', '$anio', '$fecha_mysql')");
?>
espero sea lo que buscas
__________________
Ing. Jesus Verastegui
http://www.micharanga.com.mx
http://pepeverastegui.blogspot.com
  #3 (permalink)  
Antiguo 06/08/2010, 10:11
 
Fecha de Ingreso: diciembre-2009
Ubicación: España
Mensajes: 380
Antigüedad: 10 años
Puntos: 1
Respuesta: JavaScript en PHP

si, era justo lo que quería!!!
pero ya por saberlo, por que las cifras 0,2 / 3,2 y 6,4?
Es por curiosidad, por saberlo
  #4 (permalink)  
Antiguo 06/08/2010, 10:26
Avatar de pepeverastegui  
Fecha de Ingreso: septiembre-2008
Ubicación: Pedernales, Michoacan
Mensajes: 82
Antigüedad: 11 años, 2 meses
Puntos: 2
Respuesta: JavaScript en PHP

claro men mira es sencillo

los numeros 0,2 / 3,2 y 6,4 indican el inicio y cuantos caracteres por decir tenemos la fecha:

06/08/2010
0123456789

que los numeros del 0 al 9 indican la posicion de cada letra de arriba

entonces al hacer substr($fecha, 0, 2) le estoy indicando que de la variable $fecha iniciando en la posicion 0 me obtenga 2 caracteres y con eso es el dia

y si te fijas el numero 3 coincide donde empieza lo que es el mes y el numero 6 con el anio como mes son 2 digitos por eso obtengo 2 y en anñ son cuatro

para obtener el año dado que son los ultimos numeros puedo hacer esto

substr($fecha, 6, 4);

o esto

substr($fecha, 6);

ya que si no se le indica el 3er parametro agarra desde el inicio hasta el fin de la cadena

saludos
__________________
Ing. Jesus Verastegui
http://www.micharanga.com.mx
http://pepeverastegui.blogspot.com
  #5 (permalink)  
Antiguo 06/08/2010, 10:48
 
Fecha de Ingreso: diciembre-2009
Ubicación: España
Mensajes: 380
Antigüedad: 10 años
Puntos: 1
Respuesta: JavaScript en PHP

creo que entendi perfectamente, pero las barras no cuentan como caracteres?
  #6 (permalink)  
Antiguo 06/08/2010, 10:51
Avatar de pepeverastegui  
Fecha de Ingreso: septiembre-2008
Ubicación: Pedernales, Michoacan
Mensajes: 82
Antigüedad: 11 años, 2 meses
Puntos: 2
Respuesta: JavaScript en PHP

de hecho si, pero si te fijas con el substr no las tomo en cuentaporque no interesan, ami unicamente me importan los numeros, tu tomarlas encuenta ps ya depende de ti
__________________
Ing. Jesus Verastegui
http://www.micharanga.com.mx
http://pepeverastegui.blogspot.com
  #7 (permalink)  
Antiguo 06/08/2010, 10:54
 
Fecha de Ingreso: diciembre-2009
Ubicación: España
Mensajes: 380
Antigüedad: 10 años
Puntos: 1
Respuesta: JavaScript en PHP

pero si no las tomo en cuenta en las bases de datos se insertaria en dia:02 en mes:/0 y en año:8/20 no?
  #8 (permalink)  
Antiguo 06/08/2010, 10:59
Avatar de pepeverastegui  
Fecha de Ingreso: septiembre-2008
Ubicación: Pedernales, Michoacan
Mensajes: 82
Antigüedad: 11 años, 2 meses
Puntos: 2
Respuesta: JavaScript en PHP

si cierto pero te comento que vas a ser el sub string en base a como tengas tu campo de fecha

por decir para convertir fecha de mysql a fecha normal
para convertir 2010-08-06 a esto 06/08/2010

$f1 = "2010-08-06";
$fecha_normal = substr($f1, 8, 2) . "/" . substr($f1, 5, 2) . "/" . substr($f1, 0, 4);

y para convertir de fecha normal amysql
para convertir 06/08/2010 a esto 2010-08-06

$f1 = "06/08/2010";
$fecha_normal = substr($f1, 6, 4) . "/" . substr($f1, 3, 2) . "/" . substr($f1, 0, 2);

en caso que este todo junto sin diagonales o sin guion a fecha normal

$f1 = "20100806";
$fecha_normal = substr($f1, 6, 2) . "/" . substr($f1, 4, 2) . "/" . substr($f1, 0, 4);

y asi a como lo uses
__________________
Ing. Jesus Verastegui
http://www.micharanga.com.mx
http://pepeverastegui.blogspot.com
  #9 (permalink)  
Antiguo 06/08/2010, 13:39
Avatar de _ssx  
Fecha de Ingreso: mayo-2003
Ubicación: mX
Mensajes: 683
Antigüedad: 16 años, 6 meses
Puntos: 60
Respuesta: JavaScript en PHP

PHP te da mil opciones tu decides cual :D

pero tambien puedes hacer algo como..

Código PHP:
$fecha "06/08/2010"
$nFecha explode('/',$fecha);
mysql_query("INSERT INTO tabla(dia, mes, anio, fecha) VALUES('$nFecha[0]', '$nFecha[1]', '$nFecha[2]', '$fecha_mysql')"); 
De todos modos creo que estas trabajando de más ya que tu le puedes enviar a mySQL la fecha como la tienes con diagonales y la convierte ;)
__________________
Escribe tu código de forma que refleje, y saque a relucir,lo mejor de tu carácter personal
www.oscararzola.com/blog
Principios de un programador
  #10 (permalink)  
Antiguo 07/08/2010, 06:20
 
Fecha de Ingreso: diciembre-2009
Ubicación: España
Mensajes: 380
Antigüedad: 10 años
Puntos: 1
Respuesta: JavaScript en PHP

como que la convierte?
he pensado tambien que podria insertarlo en la base de datos tal como esta y luego hacer el substr donde lo necesite
Gracias a todos :)

Última edición por DavidBL; 07/08/2010 a las 07:04
  #11 (permalink)  
Antiguo 07/08/2010, 09:46
 
Fecha de Ingreso: diciembre-2009
Ubicación: España
Mensajes: 380
Antigüedad: 10 años
Puntos: 1
Respuesta: JavaScript en PHP

oye y si yo tengo el campo de texto(para mas informacion con id=f_date_f) y en el es donde sale el dia el mes y el año, como lo hago para hacer el substr?
he intentado esto:
Cita:
<?php
$fecha = $_POST['f_date_f'];
$dia = substr($fecha, 0, 2);
$mes = substr($fecha, 3, 2);
$anio = substr($fecha, 6, 4);
?>
Como podría hacerlo?

Etiquetas: javascript
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 03:10.