Foros del Web » Programando para Internet » PHP »

Imprimir un valor en php que viene de Javascript

Estas en el tema de Imprimir un valor en php que viene de Javascript en el foro de PHP en Foros del Web. Hola a todos. En la siguiente funcion: function fecha(){ today = new Date(); var x=String(today.getFullYear()).substr(2,4); if(String(today.getMonth()+1).length<2) x=x+"0"; x=x+String(today.getMonth()+1); if(String(today.getDate()).length<2) x=x+"0"; x=x+String(today.getDate()); return x; } function ...
  #1 (permalink)  
Antiguo 17/10/2005, 06:06
Avatar de JuanKa  
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 13 años, 3 meses
Puntos: 1
Imprimir un valor en php que viene de Javascript

Hola a todos.

En la siguiente funcion:

function fecha(){
today = new Date();
var x=String(today.getFullYear()).substr(2,4);
if(String(today.getMonth()+1).length<2)
x=x+"0";
x=x+String(today.getMonth()+1);
if(String(today.getDate()).length<2)
x=x+"0";
x=x+String(today.getDate());
return x;
}

function carga()
{
document.frm_pago.fechapago.value=fecha();

}


Como podria recoger el valor de la funcion carga() en una variable de PHP, es decir :

$pago = ?????????????????

Para luego hacer echo $pago;
  #2 (permalink)  
Antiguo 17/10/2005, 06:17
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Tendrás que enviar ese formulario a tu script PHP de proceso (al que apuntas en tu action de tu formulario) .. ya sea por tu botón "submit" o forzando tu "submit" desde javascript .. o componiendo un URL con javascript que apunte a tu script PHP para su redireccionamiento.

En cualquier caso, la solución no está en PHP .. sino en javascript. PHP sólo puede esperar el dato .. no forzar su envio.

Un saludo,
  #3 (permalink)  
Antiguo 17/10/2005, 06:28
Avatar de JuanKa  
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 13 años, 3 meses
Puntos: 1
Me explico mejor lo que quiero es obtener el valor de un campo oculto mediante una funcion de javascript, valor que lo obtengo y no tengo problema, pero el mismo valor de la funcion cargar lo quiero almacenar en una variable de php para poder trabajar con ella y hacer calculos.

Aca va el codigo completo

<html>
<head>
<title></title>
<script>
function fecha(){
today = new Date();
var x=String(today.getFullYear()).substr(2,4);
if(String(today.getMonth()+1).length<2)
x=x+"0";
x=x+String(today.getMonth()+1);
if(String(today.getDate()).length<2)
x=x+"0";
x=x+String(today.getDate());
return x;
}
function carga()
{
document.frm_pago.pago.value=fecha();
}
</script>
</head>

<body onLoad="javascript:carga()">
<form name="frm_pago" method="post" action="Pagar_Articulo.php">
<input type=hidden name=pago>

<input type="submit" name="Submit" value="Pagar">
</form>
</body>
</html>

Gracias y saludos
  #4 (permalink)  
Antiguo 17/10/2005, 07:11
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Pues ya te he comentado .. hasta que no envies ese formulario (pulses ese botón "pagar") tu script "Pagar_Articulo.php" no recibirá el valor ..

Según usas tu formulario .. rebiciras en:
$_POST['pag'] ese valor ...

PD: Otro detalle .. por qué tomas la fecha de javacript (del cliente) .. deberías tomar la del servidor vía PHP (date())

Un saludo,
  #5 (permalink)  
Antiguo 17/10/2005, 07:56
Avatar de JuanKa  
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 13 años, 3 meses
Puntos: 1
Si te entiendo lo que me quieres decir, lo que pasa es que el valor de ese campo oculto lo necesito para generar una clave de codificacion.

Con respecto a la fecha no lo genero con date poque luego tengo que unir con otra funcion es decir por ejemplo

document.frm_pago.pago.value=fecha()+hora();

esto me genera mas o menos lo siguiente 051017145538 ahora este valor lo quiero recoger un variable de tipo php, es decir:

$var_pago = ...........;

Para luego este valor hacer;

$var_union = $var_pago.$otrovalor1.$otrovalor2;

!!! NO SE SI AHORA ME DEJO ENTENDER !!!

Lo que tu me dices es correcto que para recibir el valor de pago tengo que recibir en la pagina "Pagar_Articulo.php" y asignar la variable a $x por ejemplo


$x=$_POST['pago'];

Pero como te digo lo que quiero es mas o menos:

function carga()
{
document.frm_pago.fechapago.value=fecha();
}


$var_pago = carga(); // Pero yo se que esta asignacion esta muy mal
y luego

$var_union = $var_pago.$otrovalor1.$otrovalor2;

Es decir se generaria una cadena de 60 numeros y algo mas.

Bueno no se si ahora me he explicado mejor.

Gracias.
  #6 (permalink)  
Antiguo 17/10/2005, 08:07
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Te vuelvo a insistir . .se lo que pretendes hacer . .pero eso con PHP no puedes hacerlo!!!!!!!.

No sé si conoces como funciona Javascript y PHP .. pero PHP se ejecuta en el servidor. PHP genera tu javacript (página) .. y ese javascript se ejecuta en el cliente. Así que si deseas algo generado en el "cliente" (vía javascript) DEBES! enviarlo al servidor .. ya sea en tu formulario .. en un link o como gustes.

Ahora .. ese valor de tu "clave" generada . .no puedes mostrarlo en el formulario sino al procesar TU formulario .. ahí generas esa "clave" y lo presentas a tu usuario junto con el resto de datos.

Eso digamos que es lo "normal" bajo esta arquitectura "PHP" (del lado del servidor) .. Si quieres enviar a procesar a PHP parte de esos datos y retornar un valor tendrás que usar técnicas de Remote Scripting o Ajax (del cual tenemos un foro) .. Pero sólo PHP+Javascript simple NO puedes hacerlo.

A todo esto .. todo eso que deseas generar perfectamente puedes hacerlo en PHP todo!!!!. Por qué no lo haces todo en PHP? .. En php puedes obtener la hora .. la fecha actual .. un timestamp .. en fin .. todo + tu resto de variables. Más seguro si cabe que usar javascript.

Un saludo,
  #7 (permalink)  
Antiguo 17/10/2005, 08:13
Avatar de JuanKa  
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 13 años, 3 meses
Puntos: 1
Ok Cluster

Entonces vere la forma como poder generar esa clave y Gracias por Todo.

un Saludo.
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 01:31.