30/09/2018, 19:43

Code tự động kiểm tra ten khi đăng kí tài khoản trong php

Mọi người hướng dẫn giùm mình code tự động kiểm tra khi đăng ký. Mình làm bằng php

Lương Minh viết 21:47 ngày 30/09/2018

Để giải quyết vấn đề trên bạn cần làm theo cách bước sau
Bước 1 : Thiết lập sự kiện thay đỗi cho đối tượng tên tài khoảng chính là onchange.
Bước 2 : Tiến hành xử lý ajax trong sự kiện onchange và truyền tham số trên đường dẫn là giá trị của txtName.value.
Bước 3: trong tập tin php xử lý dữ liệu do ajax gữi đến bạn cần truy vấn và lấy ra số dòng trong bảng tài khoản.
Bước 4 Khi ajax lấy được số dòng trả về thì bạn kiễm tra xem nếu sô dòng bằng 0 thì hiện thị thông báo tên tài khoản khả dùng còn ngược lại thì báo đã có dữ liệu rồi cần thay đỗi tên khác.
Ví dụ

<html>
   <head>
     <title> Index page </title>
   </head>
   <body>
         <input type='text'/>
     <p> </p>
     <script src='script.js' type='text/javascript'></script>
   </body>
</html>

Tập tin script.js

function GetAjax(url, value, f){
   var xhr = (window.XMLHttpRequest) ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP');
    xhr.onreadystatechange=function(){
        if (xhr.readyState==4 && xhr.status==200){
            if( typeof f === 'function' )
                f(xhr.responseText);
        }
    }
   xhr.open("GET",url+'?'+value,true);
   xhr.send();

}

txtName = document.querySelector('input');
p = document.querySelector('p');


txtName.onchange = function()
{
   GetAjax('Ajax.php','user='+txtName.value,function(responseText){
     if(Number(responseText) == 1)
     {
        p.textContent = 'tài koản đã oàn tại';
        txtName.style.border = '1px solid red';
     }
     else
     {
       p.textContent = 'tài khoản chưa có ai xử dụng';
       txtName.style.border = '1px solid rgba(5,5,5,.3)';
     }
     
  })

vần đề còn lại là trong tập tin ajax.php khi dùng $a = $_GET[‘user’]; // lấy biến từ url và thực hiện truy vấn và trả về số dòng. Nhớ dùng echo để lấy số dòng trả về

Lương Minh viết 21:45 ngày 30/09/2018

Bản chất của kỹ thuật ajax là lấy kết quả trả về là một chuỗi từ url. Do đó tập tin xuly1.php sẽ trả về cho result trong function(result) là một chuỗi và bạn sẽ xử lý chuỗi được trả về ra sao là tùy ý (ở đây ta sẽ kiểm tra số dòng được trả về).
Để chắn chắn hơn ta dùng Number(result) trả về kiểu số và so sánh với 1.
Điều mấu chốt trong tập tin xuly1.php là lấy được kết quả số dòng trả về và xuất nó ra qua câu lênh echo để result trong ajax lấy và so sánh. Chỉ cần làm điều này thôi. Còn việc kiễm tra dữ liệu đã nhập hay chưa thì dùng jquery chứ không nên dùng php.
Nếu dùng jquery bạn có thể sử dụng sự kiện change cho text mà không cần dùng nút nhấn.

Bài liên quan
0