2012-10-02 88 views
0

我正在使用Wordpress作爲網站並在前端添加了用戶註冊表單,但我使用value屬性在用戶單擊之前用預先定義的文本填充它在盒子裏。如何在提交之前設置文本框的默認值

但是我需要表單才能不提交,除非用戶點擊了用戶名框並填入了用戶名,這樣就改變了默認的用戶名。

到目前爲止,我使用

if (!$userdata['user_login']) 
    $error = __('A username is required for registration.', 'frontendprofile'); 
elseif (username_exists($userdata['user_login'])) 
    $error = __('Sorry, that username already exists!', 'frontendprofile'); 

如果用戶名已被填充,檢查,而是因爲我在這裏有一個默認值已經那麼這個驗證工作不那麼有沒有一種方法,所以這個改變該表格將不會提交,除非用戶名已被更改value

+1

這聽起來像您的默認值應該是一個'

+0

你只需要檢查'$ userdata ['user_login']'是否等於你的默認值。 @Quantin:或者一個輸入佔位符。 – soju

回答

0

有很多方法可以解決此問題。可以檢查提交的值。例如。 (假設「defaultValue」是非法的user_login)

if (!$userdata['user_login'] || 
    $userdata['user_login'] == "defaultValue" || 
    !isNotEmpty($userdata['user_login'])) 
    $error = __('A username is required for registration.', 'frontendprofile'); 
else if (username_exists($userdata['user_login'])) 
    $error = __('Sorry, that username already exists!', 'frontendprofile'); 

function isNotEmpty($input) 
{ 
    $stringTemp = $input; 
    $stringTemp = trim($stringTemp); 

    if($stringTemp !== '') 
    { 
     return true; 
    } 

    return false; 
} 

注意:PHP也有一個空函數。這只是一個示例方法。

你應該在Javascript中添加驗證檢查&我假設你已經在保護自己免受SQL注入等領域等

希望這有助於

+0

工作完美,我現在可以開始SQL預防 – Matt

+0

很高興我可以幫助 – Phil