注册表格在注册前验证用户名

时间:2017-01-08 06:29:03

标签: javascript php ajax

我的网站在php上运行我想添加注册用户表单,使用唯一的用户名。如何在向DB"发送请求之前进行验证用户名。按注册"。

3 个答案:

答案 0 :(得分:1)

你可以为其他人甚至是听众而不是onclick

您可以使用onkeyuponblur以及更多基于鼠标的事件来调用Ajax来检查您的用户名是否存在于DB中。

答案 1 :(得分:1)

  

如何在向DB发送请求之前制作验证用户名“按   注册”。

假设您将验证userName是否唯一,则必须对db

进行校准

但您可以执行此onblur事件并使用ajax

例如

<input type ="text" onblur="validate()">

<强> JS

function validate(){
   // ajax code
}

答案 2 :(得分:0)

在类似的情况下,我在点击注册,查询数据库并与用户想要的名称进行比较时检查现有用户名,如果已存在,则提醒用户,不要将条目写入数据库。下面有一个片段以及GitHub link到您自己查看注册类的网站。

    // check if user or email address already exists
    $sql = "SELECT * FROM users WHERE user_name = '" . $user_name . "' OR user_email = '" . $user_email . "';";
    $query_check_user_name = $this->db_connection->query($sql);
    if ($query_check_user_name->num_rows == 1) {
        $this->errors[] = "Sorry, that username / email address is already taken.";
    } else {
    // write new user's data into database
    $sql = "INSERT INTO users (user_name, user_password_hash, user_email)
    VALUES('" . $user_name . "', '" . $user_password_hash . "', '" . $user_email . "');";
    $query_new_user_insert = $this->db_connection->query($sql);

如果您确实需要在命中注册之前检查名称是否已被占用,则可以使用事件监听器(如“onblur”),然后在事件函数中进行Ajax调用以处理PHP。验证名称看起来与上面的代码类似,只是不保存用户,并根据结果采取适当的操作。