Php 重新验证表单并在编辑后检查每个输入

Php 重新验证表单并在编辑后检查每个输入,php,Php,我创建了具有验证过程的字段,如必填字段、仅数字和有效电子邮件 它在提交后同时显示错误,但仅更改其中一个字段时,它接受并不会重新验证另一个字段 示例 名称=错误:必填字段 电话=错误:仅限号码 电子邮件=错误:不是有效的电子邮件 在我只更正了电子邮件后,它接受并继续提交,而不重新检查其他邮件。 请看我的密码。提前谢谢 <?php include("conn/db.php"); function renderForm($name ='', $tel = '', $email ='', $er

我创建了具有验证过程的字段,如必填字段、仅数字和有效电子邮件

它在提交后同时显示错误,但仅更改其中一个字段时,它接受并不会重新验证另一个字段

示例
名称=错误:必填字段
电话=错误:仅限号码
电子邮件=错误:不是有效的电子邮件

在我只更正了电子邮件后,它接受并继续提交,而不重新检查其他邮件。 请看我的密码。提前谢谢

<?php
include("conn/db.php");
function renderForm($name ='',  $tel = '', $email ='', $error='',  $error2='', $error3='')
{
?>
<html >
<head> <title>Form</title></head>
<body>

<?php
if ($error != '') {
echo $error
}
if ($error2 != '') {
echo $error2;
}  
if ($error3 != '') {
echo  $error3;
}
?>

<form action="" method="post">

Name : <input type = "text" class = "form-control" name = "name_text"  value="<?php echo $name; ?>">  <br/>
Tel :<input type = "text" class = "form-control" name = "tel_text"  value="<?php echo $tel; ?>"> <br/>
Email :<input type ="text" class = "form-control " name = "email_text" value="<?php echo $email; ?>" > <br/>

<input name= "submit" type="submit" value="Update" class = "btn btn-primary" >

</form>
</body>
</html>

<?php 
}

if (isset($_POST['submit'])){

$name = $_POST['name_text'];
$tel = $_POST['tel_text'];
$email = $_POST['email_text'];

    if ($name== '' ){
        $error = 'ERR: required field';
        }
    if(!is_numeric($telephone)){
        $error2 = 'ERR: numbers only';
        }
    if(!filter_var($email, FILTER_VALIDATE_EMAIL)){
        $error3 = 'ERR: Email not valid';
        }
    else
    {
    ***WILL PROCESS THE SQL QUERY ***
    header("Location: main.php");
    }

    renderForm($name, $tel , $email ,$error, $error2, $error3);
}
else{
renderForm();
}

$con->close();
?>

形式
姓名:
您只检查了电子邮件,如果是CoreCt,则正在处理。它不包括对姓名和号码的其他两项检查

我添加了一个小变量来检查这3个变量是否都正确

考虑
type=“email”
另外,请您进一步解释问题是什么,问题不清楚。
<?php
include("conn/db.php");
function renderForm($name ='',  $tel = '', $email ='', $error='',  $error2='', $error3='')
{
?>
<html >
<head> <title>Form</title></head>
<body>

<?php
if ($error != '') {
echo $error
}
if ($error2 != '') {
echo $error2;
}  
if ($error3 != '') {
echo  $error3;
}
?>

<form action="" method="post">

Name : <input type = "text" class = "form-control" name = "name_text"  value="<?php echo $name; ?>">  <br/>
Tel :<input type = "text" class = "form-control" name = "tel_text"  value="<?php echo $tel; ?>"> <br/>
Email :<input type ="text" class = "form-control " name = "email_text" value="<?php echo $email; ?>" > <br/>

<input name= "submit" type="submit" value="Update" class = "btn btn-primary" >

</form>
</body>
</html>

<?php 
}

if (isset($_POST['submit'])){

$name = $_POST['name_text'];
$tel = $_POST['tel_text'];
$email = $_POST['email_text'];
$is_valid = true;
    if ($name== '' ){
        $error = 'ERR: required field';
        $is_valid = false;
    }
    if(!is_numeric($telephone)){
        $error2 = 'ERR: numbers only';
        $is_valid = false;
        }
    if(!filter_var($email, FILTER_VALIDATE_EMAIL)){
        $error3 = 'ERR: Email not valid';
        $is_valid = false;
        }

    if($is_valid) {
    ***WILL PROCESS THE SQL QUERY ***
    header("Location: main.php");
    }

    renderForm($name, $tel , $email ,$error, $error2, $error3);
}
else{
renderForm();
}

$con->close();
?>
if(!filter_var($email, FILTER_VALIDATE_EMAIL)){
        $error3 = 'ERR: Email not valid';
} else {
    ***WILL PROCESS THE SQL QUERY ***
    header("Location: main.php");
}