如何解决在表格Post
我仍然是学生,所以我正在学习php和html5,并且正在做练习,我必须提交老师的名字和姓氏,他们的薪水以及有多少学生每门课程,如果一门课程的学生人数超过20名,则教师只能获得一次10%的加薪,因此,如果一门课程中的20名学生的教师多于一门,则一次只能获得10%的加薪。
问题是,老师可以开设1、2甚至5门课程,但每次都在变化,因此我正在学习动态输入,到目前为止,该代码适用于1门课程,但是当我添加另一输入并做提交,只识别第一个输入,不识别动态输入,我看了很多视频,阅读了很多指南,但是似乎什么都没有用,所以我认为我做错了什么,但是不知道什么
这是我的代码 HTML:
<!DOCTYPE html>
<html lang="es">
<head>
<title>Formulario Profesores</title>
<meta charset="utf-8">
<meta charset="viewport" content="width=device-width,initial-scale=1">
<link href="assets/bootstrap/css/bootstrap.css" rel="stylesheet">
<link href="assets/css/customcss.css" rel="stylesheet">
</head>
<body class="bg-grdnt">
<header>
<h1 class="text-center">Formulario Profesores</h1>
</header>
<div class="card bg-primary form-cntr" id="formulario">
<div class="card-header bg-primary text-light text-center">
Formulario
</div>
<div class="form-group">
<form class="p-3 bg-light" id="form1" action="action.php" method="POST">
<h4 class="card-title text-center">Calculo de Salario de Profesores</h4>
<div class="form-group text-justify">
<label>Nombre</label><br>
<input class="form-control" type="text" name="nom" id="nom">
</div>
<div class="form-group text-justify">
<label>Apellido</label><br>
<input class="form-control" type="text" name="ape" id="ape">
</div>
<div class="form-group text-justify">
<label>Sueldo</label><br>
<input class="form-control" type="number" name="sue" id="sue">
</div>
<div class="form-group text-justify" id="contenedor_secciones">
<p>Estudiantes por Secciones: (max. 5 Secciones)</p>
<div class="form-inline" id="sec">
<label>Seccion 1</label>
<input class="form-control mx-sm-3" type="number" name="sez_1" id="sez_1" value="">
</div>
</div>
<div class="form-group">
<input type="button" class="btn btn-primary" id="add" value="Agregar Secciones">
</div>
<br>
<div class="form-group">
<input type="submit" class="btn btn-primary" id="formsub" value="Calcular">
</div>
</form>
</div>
</div>
<footer>
</footer>
<script src="assets/bootstrap/js/bootstrap.js"></script>
<script src="assets/javascript/jquery-3.5.1.js"></script>
<script src="assets/javascript/customjs.js"></script>
</body>
</html>
customjs
$(document).ready(function(){
var maxField = 5;
var addButton = $('#add');
var wrapper = $('#contenedor_secciones');
var x = 1;
//var fieldHTML = '<div class="form-inline" id="sec'+x+'"><label>Seccion '+x+'</label><input class="form-control mx-sm-3" type="number" name="seccion" id="sez" value=""><input type="button" class="btn btn-primary mx-sm-3" id="delete" value="-">'; //New input field html
$(addButton).click(function(){
if(x < maxField){
x++;
$(wrapper).append('<div class="form-inline" id="sec'+x+'"><label>Seccion '+x+'</label><input class="form-control mx-sm-3" type="number" name="sez_'+x+'" id="sez_'+x+'" value=""><input type="button" class="btn btn-primary mx-sm-3" id="delete" value="-">');
}
else{
alert("Numero maximo de secciones alcanzado");
}
});
$(wrapper).on('click','#delete',function(e){
e.preventDefault();
$('#sec'+x).last().remove();
x--;
});
});
Action.php
<?php
$nombre = test_input($_POST["nom"]);
$apellido = test_input($_POST["ape"]);
$sueldo = test_input($_POST["sue"]);
$cont= count($_POST);
$tr= ($_POST["sez_2"]);
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
};
if ($cont=4) {
$s1="sez_1";
if ($_POST[$s1]!='') {
$ss1= test_input($_POST[$s1]);
if ($ss1>20) {
$bon = ($sueldo * 0.1);
$nsue = ($sueldo+$bon);
echo "$nombre $apellido <br>";
echo "Usted tiene un sueldo de: $sueldo<br>";
echo "Pero como maneja una o mas secciones de 20 alumnos<br>Obtendra una bonificiacion de: $bon<br>";
echo "Haciendo que su nuevo sueldo sea de $nsue";
echo "$tr";
}
else{
echo "$nombre $apellido <br>";
echo "Usted tiene un sueldo de: $sueldo";
};
};
};
?>
我试图回显第二个输入的内容,以查看是否正在获取数据,但它不起作用,因此,如果有人可以帮助我,将我指向正确的方向或写出正确的代码,我非常感谢它。
我是一位讲西班牙语的学生,所以这就是为什么某些文本或代码可能是西班牙语的原因。
编辑:这是我正在使用的Customcss.css,我忘了添加它(我不知道它是否重要,所以就在这里。)
.bg-grdnt{
background-image:linear-gradient(#8080ff,#e6e6ff);
background-repeat: no-repeat;
background-attachment: fixed;
}
.form-cntr{
width: 25rem;
margin-left: auto;
margin-right: auto;
margin-right: auto;
border:2px solid #0388fc;
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。