2010-04-23 60 views
0

我有一個註冊表單,我不希望人們用unicode字符註冊登錄用戶名。我怎樣才能把服務器端驗證PHP +客戶端驗證JavaScript或jQuery。如何驗證unicode字符?

請請幫助我。謝謝。

回答

1

那麼你的意思是在正常的ASCII範圍之外?

你可以實現在網絡上浮動的衆多seemsLikeUtf8()函數之一。

或者做一個快速的正則表達式

if (! preg_match('/^[a-z0-9-]+$/i', $username)) { 
    echo 'error'; 
} 
+0

不知道您是否意識到這一點,但該模式實際上並不允許使用UTF-8字符。 – 2010-04-23 05:38:14

+0

感謝得到它,它的工作。非常感謝 – morningglory 2010-04-23 05:52:40

+0

@Peter OP想要阻止使用非標準字符的人註冊,我認爲。我不是UTF-8的專家(雖然學習),所以隨時指點我在正確的方向:) – alex 2010-04-23 06:08:45

0

一個簡單的正則表達式會做:

if (!username.match(/^[a-zA-Z0-9_+]+$)) { 
    alert("invalid username"); 
} 

這將檢查用戶名只包含字符A-Z(上和下殼體),數字0-9, '_' 和 '+'。如果你想擴展它以允許其他角色,你只需要查看更多關於regular expressions的信息。

在服務器端,你會做同樣的事情,因爲PHP也支持regular expressions

+0

感謝它的工作。 – morningglory 2010-04-23 05:52:57