Uso de funciones PHP en formularios HTML
Publicado por Sebastian García Mejía (2 intervenciones) el 18/04/2018 21:11:36
Buenas tardes,
Estoy iniciando el proceso de aprendizaje de PHP y en un ejercicio que estoy trabajando se requiere crear una una función para las 4 operaciones matemáticas (suma, resta, multiplicación, y división) de dos números que se ingresen mediante cajas de texto. La operación matemática se seleccionará por medio de una lista desplegable y con un botón de acción se realizará el cálculo para mostrar el resultado con la instrucción "echo". La función debe estar en un segundo archivo. Les agradezco cualquier explicación que me puedan dar.
El inconveniente es que no sé como puedo capturar el valor ingresado en las dos cajas de texto para que sean los argumentos que entren en la función. A continuación dejo el código que he realizado para ambos archivos:
1) Código del formulario
2) Código de la función
Nota: también quisiera saber por qué en Netbeans no se puede usar $_POST[' '] porque aparece este mensaje: do not access superglobal $_post array directly.
Estoy iniciando el proceso de aprendizaje de PHP y en un ejercicio que estoy trabajando se requiere crear una una función para las 4 operaciones matemáticas (suma, resta, multiplicación, y división) de dos números que se ingresen mediante cajas de texto. La operación matemática se seleccionará por medio de una lista desplegable y con un botón de acción se realizará el cálculo para mostrar el resultado con la instrucción "echo". La función debe estar en un segundo archivo. Les agradezco cualquier explicación que me puedan dar.
El inconveniente es que no sé como puedo capturar el valor ingresado en las dos cajas de texto para que sean los argumentos que entren en la función. A continuación dejo el código que he realizado para ambos archivos:
1) Código del formulario
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
<!DOCTYPE html>
<!--
Crear un formulario que contenga dos cajas de texto, una lista desplegable
y un botón que permita llamar la función para calcular la operación
matemática seleccionada.
-->
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<form method="post" action="biblioteca.php">
<label>Número 1</label>
<input type ="text" size="5" name="num1" required>
<br><br>
<label>Número 2</label>
<input type="text" size="5" name="num2" required>
<br><br>
Seleccione la operacion matemática
<select name="opciones">
<option>S</option>
<option>R</option>
<option>M</option>
<option>D</option>
</select><br><br>
<input type="submit" name="calcular" value="Calcular">
</form>
<?php
//Incluir el archivo que contiene la función
require_once './biblioteca.php';
//Recibir los datos del formulario en variables
$valor1 = filter_input(INPUT_POST,'num1');
$valor2 = filter_input(INPUT_POST,'num2');
$opciones = filter_input(INPUT_POST,'opciones');
//Si el botón se oprime entonces llamar la función
if (!NULL== filter_input(INPUT_POST,'calcular')){
echo operaciones($valor1,$valor2,$opciones);
}
?>
</body>
</html>
2) Código de la función
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
//Creamos la función para realizar las operaciones básicas
function operaciones($num_1,$num_2,$operacion){
if ($operacion=="S"){
echo "la suma de $num_1 y $num_2 es: ";
return $num_1+$num_2;
}elseif ($operacion=="R"){
echo "la resta de $num_1 y $num_2 es: ";
return $num_1-$num_2;
}elseif ($operacion=="M"){
echo "la multiplicación de $num_1 por $num_2 es: ";
return $num_1*$num_2;
}elseif($operacion=="D" and $num_2!=0){
echo "la división de $num_1 entre $num_2 es: ";
return $num_1/$num_2;
}
//Si no se puede realizar la operación seleccionada mostrar
return "No se puede realizar la operación seleccionada";
}
Nota: también quisiera saber por qué en Netbeans no se puede usar $_POST[' '] porque aparece este mensaje: do not access superglobal $_post array directly.
Valora esta pregunta
0