這個正則表達式變量不符合我的preg_match
功能工作:如何解決此正則表達式錯誤?
形式
<div class="row">
<div class="col-md-6">
<label for="f_name">First Name</label>
<input type="text" class="form-control" id="f_name" name="f_name" >
</div>
<div class="col-md-6">
<label for="l_name">Last Name</label>
<input type="text" class="form-control" id="l_name" name="l_name" >
</div>
</div><br>
<div class="row">
<div class="col-md-12 text-right">
<button id="signup_button" name="signup_button" class="btn btn-success" style="font-family: Roboto;font-size: 15px;">
Create Account
</button>
</div>
</div>
這是JavaScript的
$("#signup_button").click(function (event) {
event.preventDefault();
$.ajax({
url : "register.php",
method : "POST",
data : $("form").serialize(),
success : function(data){
$("#signup_msg").html(data);
}
})
})
這是PHP文件..
$f_name = $_POST['f_name'];
$name = "/^ [A-Z] [a-zA-Z ]+$/";
if (!preg_match($name,$f_name))
{
echo "$f_name is not valid";
exit();
}
當我鍵入正確的名稱它說invali d下面的屏幕截圖 enter image description here
我輸入的文字說$f_name
是無效的。我猜正則表達式不起作用。
它不會,如果工作你輸入'NAME Firstname' –
@ThomasRollet我應該如何知道他的要求 - 他只是寫了正則表達式不起作用,而我的猜測是,由於空間原因,這不起作用。如果他想要'NAME Firstname',他可能會更好地使用'/^[AZ] + [AZ] [az] + $ /' – Philipp
@ThomasRollet這樣的東西,即使在刪除空格之後它仍然不工作,它說無論我輸入什麼內容都無效 –