I am trying to insert form field values after validating the form. I develope a seperate php file validate1.php to insert the form field values in database and another file describing form and its validation is in connection.php
When I run connection.php, form fields are getting validated only once,and after form is submitted after that i enter anything.Which should not be happened.
My connection.php is
<html>
<head>
    <title></title>
    <style> .error {color:#ff0000;} </style>
</head>
<body>
    <?php 
        $companyNameErr = $addressErr = $emailErr = $contactErr = "";
        $companyName = $address = $email = $contact = $description = "";
        function test_data($data)
        {
            $data=trim($data);
            $data=stripslashes($data);
            $data=htmlspecialchars($data);
            return $data;
        }
        $errors = array();
        if ( $_SERVER["REQUEST_METHOD"] =="POST" )
        {
            $companyName=$_POST["companyName"];
            if( empty($companyName) )
            {
                $companyNameErr = "Please Enter Company Name";
                $errors[]= $companyNameErr ;
            }
            else
            {
                if( !preg_match("/^[a-zA-Z ]*$/",$companyName) )
                {
                    $companyNameErr = "Invalid Company Name";
                    $errors[]= $companyNameErr ;
                }
                else
                {
                    $companyName=test_data($companyName);
                }
            }
            $address=$_POST["address"];
            if( empty($address) )
            {
                $addressErr = "Please Enter Address";
                $errors[]= $addressErr ;
            }
            else
            { 
                $address=test_data($address);
            }
            $email=$_POST["email"];
            if( empty($email) )
            {
                $emailErr = "Please Enter Email";
                $errors[]= $emailErr ;
            }
            else
            {
                if( !filter_var($email, FILTER_VALIDATE_EMAIL) )
                {
                    $emailErr = "Invalid Email";
                    $errors[]= $emailErr ;
                }
                else
                {
                    $email=test_data($email);
                }   
            }       
            $contact=$_POST["contact"];
            if( empty($contact) )
            {
                $contactErr = "Please Enter Contact Number";
                $errors[]= $contactErr ;
            }
            else
            { 
                if( !preg_match("/^[0-9]*$/",$contact ) )
                {
                    $contactErr = "Invalid Contact";
                    $errors[]= $contactErr ;
                }
                else
                {
                    $contact=test_data($contact);
                }   
            }
    }
    ?>
    <form name="myform" method="post" action="<?php if(empty($errors)){ echo $_SERVER["PHP_SELF"]; }else{ echo "validate1.php"; }?>" >
        <table>
            <tr>
                <td>Company Name</td>
                <td><input type="text" name="companyName" value ="<?php if(isset($_POST['companyName']) && empty($companyNameErr)){ echo $_POST['companyName'];} else {echo '';}?>" required ><span class="error"><sup>*</sup><?php echo $companyNameErr; ?></span></td>
            </tr>
            <tr>
                <td>Address</td>
                <td><input type="text" name="address" value ="<?php if(isset($_POST['address']) && empty($addressErr)){ echo $_POST['address'];} else {echo '';}?>" required><span class="error"><sup>*</sup><?php echo $addressErr; ?></span></td>
            </tr>
            <tr>
                <td>Email</td>
                <td><input type="text" name="email" value ="<?php if(isset($_POST['email']) && empty($emailErr)){ echo $_POST['email'];} else {echo '';}?>" required><span class="error"><sup>*</sup><?php echo $emailErr; ?></span></td>
            </tr>
            <tr>
                <td>Contact</td>
                <td>+91-<input type="text" name="contact" value ="<?php if(isset($_POST['contact']) && empty($contactErr)){ echo $_POST['contact'];} else {echo '';}?>" required maxlength="10" minlength="10"><span class="error"><sup>*</sup><?php echo $contactErr; ?></span></td>
            </tr>
            <tr>
                <td>Description</td>
                <td><textarea name="description" cols="60" rows="3"></textarea></td>
            </tr>
        </table>
        <input type="submit" name="submit" value="submit">
    </form>
</body>
and Validate1.php is
<html>
<head>
    <title></title>
</head>
<body>    
<?php 
    $servername="localhost";
    $username="root";
    $password="";
    $conn = new mysqli($servername, $username, $password, 'mydatabase');
    if ($conn->connect_error)
    {
        die("Connection failed: " . $conn->connect_error);
    }
    $conn->query("CREATE DATABASE IF NOT EXISTS `MyDataBase`"); 
    $conn->query("CREATE TABLE IF NOT EXISTS MyDataBase.company_details( `comp_id` INT AUTO_INCREMENT PRIMARY KEY,`company_name` VARCHAR(50) NOT NULL,`address` VARCHAR(70) NOT NULL,`email` VARCHAR(30) NOT NULL,`contact` INT(13) NOT NULL,`description` VARCHAR(150))");
    $conn->query("INSERT INTO company_details (company_name, address, email, contact, description ) VALUES ( '".$_POST['companyName']."', '".$_POST['address']."', '".$_POST['email']."', '".$_POST['contact']."', '".$_POST['description']."')");
    $conn->close();
?>
</body>
 
    