如何限制输入字段中的空格?

时间:2018-05-21 10:32:24

标签: php html mysqli

<!DOCTYPE HTML>  
<html>
<head>
<style>
.error {
    color:red;
}

.button {
     background-color: #4CAF50;
     border: none;
     color: white;
     padding: 10px 25px;
     text-align: center;
     text-decoration: none;
     display: inline-block;
     font-size: 16px;
     margin: 4px 2px;
     cursor: pointer;
 }
 .div1 {
     background-color: #f2f2f2;
     margin-top: -19px;
     margin-bottom: -25px;
     margin-left: -19px; 
 }

 .copy {
     border-radius: 4px;
     padding: 6px 20px;
     border-style: ridge;
 }

 .copy1{
     border-radius: 4px;
     padding: 6px 28px;
     border-style: ridge;
 }

 .copy2{
     border-radius: 4px;
     padding: 4px 2px;
 }

     </style>
     </head>
     <body>  


                    <?php
                    session_start();
                    if (isset($_SESSION['id'])){
                                header('location:welcome.php');
                        } 
                        ?>


                <?php
                // define variables and set to empty values
                include_once 'connect.php';

                $nameErr = $emailErr = $usernameErr = $passwordErr = $DateOfBirthErr = $departmentErr = $ageErr = $fileToUploadErr = $fileToUploadErrr = $fileToUploadErrrr = $fileToUploadErrrrr = $fileToUploadErrrrrr = "" ;
                $name = $email = $username = $password = $DateOfBirth = $department = $age = $fileToUpload = $filename = $file = "";

                if (isset($_POST['submit'])) {
                  if (empty($_POST["name"])) {
                    $nameErr = "Name is required";
                  } else {
                    $name = test_input($_POST["name"]);
                    // check if name only contains letters and whitespace
                    if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
                      $nameErr = "Only letters"; 
                    }
                  }

                   if (empty($_POST["email"])) {
                    $emailErr = "Email is required";
                  } else {
                    $email = test_input($_POST["email"]);
                    // check if e-mail address is well-formed
                    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
                      $emailErr = "Invalid email format"; 
                    }
                  }

                  if (empty($_POST["username"])) {
                    $usernameErr = "Username is required";
                  } else {
                    $username = test_input($_POST["username"]);
                     // check if name only contains letters and whitespace
                    if (!preg_match("/^[a-zA-Z ]*$/",$username)) {
                      $usernameErr = "Only letters"; 
                    }
                  }

                  if (empty($_POST["password"])) {
                    $passwordErr = "Password is required";
                  } else {
                    $password = test_input($_POST["password"]);
                    $hashed_password = password_hash($password, PASSWORD_DEFAULT);
                    // check weather password is alphanumeric
                  if(!preg_match('/^(?=.*\d)(?=.*[A-Za-z])[0-9A-Za-z!@#$%]{6,}$/', $password))
                  {
                    $passwordErr = "Password must be alphanumeric and atleast 6 characters long!";
                  }
                  }

                   if (empty($_POST["Date_of_birth"])) {
                    $DateOfBirthErr = "Date Of Birth is required";
                  } else {
                    $DateOfBirth = test_input($_POST["Date_of_birth"]);
                  }

                  if (empty($_POST["department"])) {
                    $departmentErr = "Department is required";
                  } else {
                    $department = test_input($_POST["department"]);
                  }

                   if (empty($_POST["age"])) {
                    $ageErr = "Age is required";
                  } else {
                    $age = test_input($_POST["age"]);
                  }

                        //UPLOAD FILE
                        $uploaddir = 'upload/';
                        $uploadfile = $uploaddir . basename($_FILES['fileToUpload']['name']);
                        $imageFileType = pathinfo($uploadfile,PATHINFO_EXTENSION);

                        if($_FILES['fileToUpload']['name'] != '')
                        {  
                            // Check the image is actaully image or not
                            $check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
                            if($check == false) 
                            {
                                $fileToUploadErrrrr = "File is not an image.";

                            } 

                            // Check if file already exists
                            if (file_exists($uploadfile)) {
                                $fileToUploadErrrrrr = "Sorry, file already exists.";
                            }

                                if($imageFileType != "jpg" && $imageFileType != "png" ) 
                                {
                                        $fileToUploadErr = "Sorry, only JPG,PNG files are allowed.";
                                }


                                elseif($_FILES['fileToUpload']['size'] > 500000) 
                                {

                                $fileToUploadErrrr = "Sorry, your file is too large.";

                                }

                                else
                                {   
                                      /*  if($filename != '')
                                        {
                                                $target = "upload/".$filename;
                                                unlink($target);
                                        }*/

                                        $uploaded = move_uploaded_file($_FILES['fileToUpload']['tmp_name'], $uploadfile);
                                        if ($uploaded) {
                                                $file = $_FILES['fileToUpload']['name'];
                                        }   
                                        else{
                                                $file = $filename;
                                        }
                                }
                        }

                        elseif($_FILES['fileToUpload']['name'] = " ")
                        {

                            $fileToUploadErrr = "Please Select an image!";

                        }

                        else {
                                $file = $filename;
                        }



                if($nameErr == "" && $emailErr == "" && $usernameErr == "" && $passwordErr == "" && $fileToUploadErr == "" && $fileToUploadErrr == "" && $fileToUploadErrrr == "" && $fileToUploadErrrrr == "" && $fileToUploadErrrrrr == "" )
                  { 
                $check="SELECT * FROM users WHERE username = '$_POST[username]'";
                $rs = mysqli_query($mysqli,$check);
                $da = mysqli_fetch_array($rs, MYSQLI_NUM);
                if($da[0] > 0) {
                    echo "Username Already in Exists<br/>";
                }

                else
                {
                    $sql = "INSERT INTO users(`userid`,`username`, `password`, `email` , `name` , `Date_of_birth` , `department` ,`age` , `filename` )
                             VALUES ('','".$username."', '".$hashed_password."', '".$email."' , '".$name."' , '".$DateOfBirth."' , '".$department."' , '".$age."' , '".$file."')";

                        if (mysqli_query($mysqli, $sql)) {
                        echo "Registered successfully";
                        } else {
                        echo "Error: " . $sql . "<br>" . mysqli_error($mysqli);
                        } 
                        mysqli_close($mysqli);
                }
                  }
                }

                function test_input($data) {
                  $data = trim($data);
                  $data = stripslashes($data);
                  $data = htmlspecialchars($data);
                  return $data;
                }
                ?>

                <div style="padding-left: 250px" class="div1">

                    <h2 style="color:#009999">Registration Form :</h2>
                    <p><span class="error">All fields are required </span></p>
                    <form action="" method="post" enctype="multipart/form-data">

                            <span style="color:#0099ff">Name: </span>
                            <input type="text" name="name" class= "copy" style="margin-left: 52px"  value ="<?php 
                                     if (isset($name)) 
                                      echo $name; 
                                 ?>">
                            <span class="error"> <?php echo $nameErr;?></span>
                            <br><br>

                            <span style="color:#0099ff"> E-mail: </span>
                            <input type="text" name="email" class= "copy" style="margin-left: 48px"  value ="<?php 
                                     if (isset($email)) 
                                      echo $email; 
                                 ?>">
                            <span class="error"><?php echo $emailErr;?></span>
                            <br><br>

                            <span style="color:#0099ff"> Username: </span>
                            <input type="text" name="username"  class= "copy" style="margin-left:26px"  value ="<?php 
                                     if (isset($username)) 
                                      echo $username; 
                                 ?>">
                            <span class="error"> <?php echo $usernameErr;?></span>
                            <br><br>

                            <span style="color:#0099ff"> Password: </span>
                            <input type="password" name="password"  class= "copy" style="margin-left:30px">
                            <span class="error"> <?php echo $passwordErr;?></span>
                            <br><br>

                            <span style="color:#0099ff"> Date Of Birth : </span>
                            <input type="date" class= "copy1" name="Date_of_birth"  value ="<?php 
                                     if (isset($DateOfBirth)) 
                                      echo $DateOfBirth; 
                                 ?>">
                            <span class="error"> <?php echo $DateOfBirthErr;?></span>
                            <br><br>

                            <span style="color:#0099ff">  Age : </span>
                            <input type="number" name="age"  class= "copy" style="margin-left:62px"  value ="<?php 
                                     if (isset($age)) 
                                      echo $age; 
                                 ?>">
                            <span class="error"> <?php echo $ageErr;?></span>
                            <br><br>

                            <span style="color:#0099ff">  Department : </span>
                            <select name="department"  class= "copy2" style="margin-left:14px"  value ="<?php 
                                     if (isset($department)) 
                                      echo $department; 
                                 ?>">
                                    <option value="EE">Electrical & Electronics</option>
                                    <option value="EC">Electronics & Communication</option>
                                    <option value="ME">Mechanical</option>
                                    <option value="CS">Computer Science</option>
                                    <option value="CV">Civil</option>
                                    <option value="IS">Information Science</option>
                            </select>
                            <span class="error"> <?php echo $departmentErr;?></span>
                            <br><br>

                            <span style="color:#0099ff">  Select image : </span>
                            <input type="file" name="fileToUpload">
                            <?php if($filename !=''){ ?> <img src="<?php  echo "upload/" .$filename ?>" style="width:180px;height:100px;padding:10px;"/> <?php } ?>
                            <span class="error"><br> <?php echo $fileToUploadErr; ?></span>
                            <span class="error"><br> <?php echo $fileToUploadErrr; ?></span>
                            <span class="error"><br> <?php echo $fileToUploadErrrr; ?></span>
                            <span class="error"><br> <?php echo $fileToUploadErrrrr; ?></span>
                            <span class="error"><br> <?php echo $fileToUploadErrrrrr; ?></span>

                            <input type="submit" class="button" name="submit" value="Register">  
                            <p style="color:black">Already Registered? <a href="login.php">Login</a>.</p>

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

嗨,大家好我只有一个小问题请帮助我,我有一个注册表格,各种输入, 我的问题是,如果我给名称输入字段留空格,然后如果我给提交然后它应该 显示任何不允许空格的错误
即,它们应该只是字母,除非它不应该接受任何数字特殊字符和其他东西。 请问有人帮我吗?

1 个答案:

答案 0 :(得分:0)

此行if (!preg_match("/^[a-zA-Z ]*$/",$name)) {必须如下:

if (!preg_match("/^[a-zA-Z]*$/",$name)) {

说明:

  

你的正则表达式最后有一个空间。删除它将解决你的问题。