PHP - Usar misma variable de Javascript en PHP

 
Vista:
sin imagen de perfil

Usar misma variable de Javascript en PHP

Publicado por Julibaga (5 intervenciones) el 08/12/2014 15:32:57
Hola a todos.
En el siguiente código, lo que pretendo hacer es lo siguiente:
Con PHP tengo unas variables que me arrojan una cantidad. Esa cantidad la quiero multiplicar por un número que yo le tengo que poner en un input y me tiene que arrojar el resultado en el tercer campo.
Esta operación es doble porque son dos variable distintas las que tomo del PHP. Lo que necesito es que al poner en el input 100 (por ejemplo), me dé el resultado en las dos como si repitiera 100 en el segundo cálculo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<script type="text/javascript">
//<![CDATA[
 
function calcula(operacion){
var cantidad = document.getElementById('CANTIDAD').value;
var cantidad_decimal = parseFloat(cantidad);
var precio = document.getElementById('PRECIO').innerHTML;
 var decimal = parseFloat(precio);
var subtotal = cantidad * decimal
document.getElementById('SUBTOTAL').value = subtotal
}
function calcula2(operacion){
var cantidad2 = document.getElementById('CANTIDAD2').value;
var cantidad_decimal2 = parseFloat(cantidad2);
var precio2 = document.getElementById('PRECIO2').innerHTML;
 var decimal2 = parseFloat(precio2);
var subtotal2 = cantidad2 * decimal2
document.getElementById('SUBTOTAL2').value = subtotal2
 
}
 
//]]>
</script>
<center>
<font size="4"><b>Calculate the price of your property.</b></font>
<br /><font size="3">How many m² does the LOT you want to price have.. type the number in the blank.</font><br /><br />
<font size="4"><table>
<tr>
<td>Average Selling Price per m² is $</td>
<td>
<div style = "vertical-align:middle" id="PRECIO"><?php echo number_format(($sellingprice / $i)/($sumlot / $i),0,'.',',');?></div>
</td>
<td>&nbsp;x&nbsp;</td>
<td><input style="width:80px; fonf-weight:bold; font-size:12pt;" type="text" name="CANTIDAD" id="CANTIDAD" value="" onkeyup="calcula()" /></td>
<td>&nbsp;&nbsp;=&nbsp;&nbsp;$</td></font>
<td><input style="width:80px; fonf-weight:bold; font-size:12pt;" type="text" name="SUBTOTAL" id="SUBTOTAL" value="" readonly size="9" /></td>
</tr>
</table>
</font>
</center>
 
<center>
<font size="4"><table>
<tr>
<td>Average Asking Price per m² is $</td>
<td>
<div style = "vertical-align:middle" id="PRECIO2"><?php echo number_format((($sumprice / $i)/($sumlot / $i)),0,'.',',');?></div>
</td>
<td>&nbsp;x&nbsp;</td>
<td><input style="width:80px; fonf-weight:bold; font-size:12pt;" type="text" name="CANTIDAD2" id="CANTIDAD2" value="" onkeyup="calcula2()" /></td>
<td>&nbsp;&nbsp;=&nbsp;&nbsp;$</td></font>
<td><input style="width:80px; fonf-weight:bold; font-size:12pt;" type="text" name="SUBTOTAL2" id="SUBTOTAL2" value="" readonly size="9" /></td>
</tr>
</table>
</font>
</center>
Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Vainas
Val: 34
Ha aumentado su posición en 3 puestos en PHP (en relación al último mes)
Gráfica de PHP

Usar misma variable de Javascript en PHP

Publicado por Vainas (262 intervenciones) el 08/12/2014 20:48:21
Buenas:

Ya lo has hecho en otros sitios pero no lo has visto. Simplemente tienes que traer el valor de php con echo y meterlo en value="<?php echo // aqui el valor ?>" ....

Ejemplo:

1
2
3
<td><input style="width:80px; fonf-weight:bold; font-size:12pt;" type="text" name="CANTIDAD" id="CANTIDAD" value="" onkeyup="calcula()" /></td>
<td>&nbsp;&nbsp;=&nbsp;&nbsp;$</td></font>
<td><input style="width:80px; fonf-weight:bold; font-size:12pt;" type="text" name="SUBTOTAL" id="SUBTOTAL" value="<?php echo // Aqui el valor que traes de donde sea desde php ?>" readonly size="9" /></td>


Otra cosa mas. Esas dos funciones hacen exactamente lo mismo (duplicando codigo). Las puedes resumir en uno solo tal que asi:

1
2
3
4
5
function calcula(i){
var cantidad_decimal = parseFloat(document.getElementById('CANTIDAD'+i).value);
var decimal = parseFloat(document.getElementById('PRECIO'+i).innerHTML);
document.getElementById('SUBTOTAL'+i).value = cantidad_decimal * decimal;
}

lo que haces dentro del input es llamar con un numero para saber que va a usar:

<input.... onkeyup="calcula(1)" />...
al primero
<input.... onkeyup="calcula(2)" />...
al segundo

y renombras los id's a CANTIDAD1 PRECIO1 SUBTOTAL1 y CANTIDAD2 PRECIO2 SUBTOTAL2

Espero que te sirva. Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Usar misma variable de Javascript en PHP

Publicado por Julibaga (5 intervenciones) el 08/12/2014 21:05:53
Muchísimas gracias por responder, pero o no te entendí o no supe explicarme...
aquí:
<td><input style="width:80px; fonf-weight:bold; font-size:12pt;" type="text" name="CANTIDAD2" id="CANTIDAD2" value="" onkeyup="calcula2()" /></td>
de la segunda parte, lo que necesito es traer el valor CANTIDAD de la primera parte. Es decir. Si en CANTIDAD le puse 100, en CANTIDAD2 me tome los 100 también.

Nunca he programado en java ni php

Y si todo ese código se puede poner más sencillo, te lo agradezco más todavía... jeje
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Usar misma variable de Javascript en PHP

Publicado por xve (6935 intervenciones) el 08/12/2014 21:46:57
Hola,

no se entiende muy bien como lo quieres hacer, pero si lo que quieres es poner el mismo valor en CANTIDAD2 que hay en CANTIDAD, tendrias que poner en la función calcula() algo como:

1
document.getElementById('CANTIDAD2').value=document.getElementById('CANTIDAD').value;

aunque como te comento, no lo veo muy claro... ya nos comentaras...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Usar misma variable de Javascript en PHP

Publicado por Julibaga (5 intervenciones) el 08/12/2014 22:16:01
A ver si me doy a entender...
Con el código inicial sale, por ejemplo:
$135 * [input cantidad] = [resultado]
$150 * [input cantidad2] = [resultado2]

ok. Imaginemos que le pongo 100 al [input cantidad]

Lo que necesito es que haga:
$135 * [100] = 13500
$150 * [100] = 15000

Es decir, que solo le tenga que poner una vez 100 en el campo de arriba. Y si encima, me da el formato de número 13,500 y 15,000 respectivamente, mejor. Si no, no importa mucho.

Probé el código que me pasaste, pero no fui capaz de hacerlo funcionar.
Muchas gracias de nuevo.

Para que esta operación te tenga un poco más de sentido, te lo explico.
el 135 y el 150 son precios promedios por metro cuadrado. Si quiero ver los dos resultados que me arrojaría por 100 m², con ponérselo a uno, lo debe tomar el otro porque se trata de comparar por la misma cantidad de metros cuadrados.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Usar misma variable de Javascript en PHP

Publicado por xve (6935 intervenciones) el 09/12/2014 07:54:01
Hola Julibaga, ahora te he entendido... solo tienes que modificar la función calcula para que ponga el valor y realize el calculo de calcula y calcula2... algo así:
1
2
3
4
5
6
7
8
9
10
function calcula(operacion){
	var cantidad = document.getElementById('CANTIDAD').value;
	document.getElementById('CANTIDAD2').value=cantidad;
	var cantidad_decimal = parseFloat(cantidad);
	var precio = document.getElementById('PRECIO').innerHTML;
	var decimal = parseFloat(precio);
	var subtotal = cantidad * decimal
	document.getElementById('SUBTOTAL').value = subtotal
	calcula2();
}

Creo que con esto te funcionara perfectamente... coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Usar misma variable de Javascript en PHP

Publicado por Julibaga (5 intervenciones) el 09/12/2014 15:12:47
Hola.
Te paso el código completo de cómo lo puse. Ahora no calcula nada... jeje
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<script type="text/javascript">
//<![CDATA[
 
function calcula(operacion){
var cantidad = document.getElementById('CANTIDAD').value;
document.getElementById('CANTIDAD2').value=cantidad;
var cantidad_decimal = parseFloat(cantidad);
var precio = document.getElementById('PRECIO').innerHTML;
var decimal = parseFloat(precio);
var subtotal = cantidad * decimal
document.getElementById('SUBTOTAL').value = subtotal calcula2();
}
 
function calcula2(operacion){
var cantidad2 = document.getElementById('CANTIDAD2').value;
var cantidad_decimal2 = parseFloat(cantidad2);
var precio2 = document.getElementById('PRECIO2').innerHTML;
 var decimal2 = parseFloat(precio2);
var subtotal2 = cantidad2 * decimal2
document.getElementById('SUBTOTAL2').value = subtotal2
 
}
 
//]]>
</script>
<center>
<font size="4"><b>Calculate the price of your property.</b></font>
<br /><font size="3">How many m² of CONSTRUCTION does the listing you want to price have.. type the number in the blank.</font><br /><br />
<font size="4"><table>
<tr>
<td>Average Selling Price per m² is $</td>
<td>
<div style = "vertical-align:middle" id="PRECIO"><?php echo number_format($averageselling,0,'.',',');?></div>
</td>
<td>&nbsp;x&nbsp;</td>
<td><input style="width:80px; fonf-weight:bold; font-size:12pt;" type="text" name="CANTIDAD" id="CANTIDAD" value="" onkeyup="calcula()" /></td>
<td>&nbsp;&nbsp;=&nbsp;&nbsp;$</td></font>
<td><input style="width:80px; fonf-weight:bold; font-size:12pt;" type="text" name="SUBTOTAL" id="SUBTOTAL" value="" readonly size="9" /></td>
</tr>
</table>
</font>
</center>
 
<center>
<font size="4"><table>
<tr>
<td>Average Asking Price per m² is $</td>
<td>
<div style = "vertical-align:middle" id="PRECIO2"><?php echo number_format((($sumprice / $i)/($sumconst / $i)),0,'.',',');?></div>
</td>
<td>&nbsp;x&nbsp;</td>
<td><input style="width:80px; fonf-weight:bold; font-size:12pt;" type="text" name="CANTIDAD2" id="CANTIDAD2" value="" onkeyup="calcula2()" /></td>
<td>&nbsp;&nbsp;=&nbsp;&nbsp;$</td></font>
<td><input style="width:80px; fonf-weight:bold; font-size:12pt;" type="text" name="SUBTOTAL2" id="SUBTOTAL2" value="" readonly size="9" /></td>
</tr>
</table>
</font>
</center>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Usar misma variable de Javascript en PHP

Publicado por xve (6935 intervenciones) el 09/12/2014 19:13:24
Revisa mi código... fíjate que te falta una linea!!! las dos lineas que he añadido están en negrita!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Usar misma variable de Javascript en PHP

Publicado por Julibaga (5 intervenciones) el 09/12/2014 19:52:22
Efectivamente era la segunda línea la que me faltaba.
Muchísimas gracias de nuevo. Eres un crack.
Ahora, por último, crees que es posible darle formato de número al resultado?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar