簡體   English   中英

使用preg_match在PHP中進行表單驗證

[英]form validation in PHP using preg_match

嗨,我正在嘗試驗證一個簡單的HTML表單。 這是我的HTML代碼-

<HTML>
    <body>
        <form method="get" action="password.php">
        User ID<input type="text" name="user" id="user" required/><br/>
        Password<input type="password" name="pass" id="pass" required/><br/>
        <input type="submit" value"Login Here">
        </form>
    </body>
    </html>

密碼只能包含數字。 我的password.php是-

<?php
    $name=$_GET['user'];
    $pass=$_GET['pass'];

    $strlen1= strlen($name);
    $strlen2= strlen($pass);

    $regex= "/^[789][0-9]{9}$/";   // my password should contain digits only.

    if($strlen1==0 | $strlen2==0)   
        {
            echo 'Username or password field is empty'.'<br/>';
        }

    else if($name==$pass)
        {
            echo 'Go for a better password'.'<br/>';
        }

    else if(!preg_match($regex,$pass))
        {
            echo 'password is invalid'.'<br/>';
        }

    else
        {
            echo 'You have successfully logged in'.'<br/>';
        }

    ?>

即使在我輸入有效密碼(例如“ 123456”)時運行腳本時,消息也會顯示“密碼無效”。 請讓我知道以上代碼中的錯誤。 謝謝!!!

您的密碼應以7、8、9中的任何一個開頭,后跟9位數字

$regex= "/^[789][0-9]{9}$/";

要過濾數字,請僅將其替換為:

$regex="/^\d+$/";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM