Bài 08: Sử dụng CURL PHP để đăng nhập vào website khác

Trong bài này chúng ta sẽ vận dụng những kiến thức ở bài POST và GET trong PHP CURL để xử lý đăng nhập vào một website nào đó. Cái này khá là hay đấy vì mình có thể dùng để làm ứng dụng đăng bài tự động lên các forum hay một số website khác cheeky.

Bây giờ ta cần một website để đăng nhập, cũng không biết chọn site nào nên mình mạo muội xin phép được lấy site http://www.vn-zoom.com/, nếu có gì vi phạm thì mong được bỏ qua và mình sẽ gở bài ngay nếu admin website vnzoom yêu cầu.

1. Sử dụng CURL để đăng nhập vào website khác

Để sử dụng CURL đăng nhập vào một website nào đó thì điều trước tiên bạn phải dùng Firebug để soi xem những dữ liệu nào sẽ được gửi đi khi xử lý đăng nhập, ở đây mình đã check và thấy những key dữ liệu sẽ gửi đi là:

  • Method = POST
  • Action  = http://www.vn-zoom.com/login.php?do=login
  • vb_login_username: Tên đăng nhập
  • vb_login_password: Mật khẩu
  • securitytoken = guest: có gí trị là guest
  • do = login: có giá trị là login

Như vậy chúng ta sẽ có một mảng các tham số là:

$param = array(
    'vb_login_username' => 'tendangnhap',
    'vb_login_password' => 'matkhau',
    'securitytoken' => 'guest',
    'do' => 'login'
);

Bây giờ ta sẽ code nhé, bạn tạo một file index.php với nội dung như sau:

// Các tham số
$param = array(
    'vb_login_username' => 'tendangnhap',
    'vb_login_password' => 'matkhau',
    'securitytoken' => 'guest',
    'do' => 'login'
);

// URL 
$url = 'http://www.vn-zoom.com/login.php?do=login';

// Khởi tạo CURL
$ch = curl_init($url);

// Thiết lập có return
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_setopt($ch, CURLOPT_POST, count($param));
curl_setopt($ch, CURLOPT_POSTFIELDS, $param);

// Thiết lập sử dụng trình duyệt hiện tại
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);

$result = curl_exec($ch);

curl_close($ch);

echo $result;

Các bạn đổi thông tin tên đăng nhập và mật khẩu sau đó  chạy lên sẽ thấy kết quả là nó thông báo đăng nhập thành công, như vậy là ta đã login vào rồi đấy.

2. Lời kết

Bài này chỉ mang tính chất học tập về CURL nói chung và cách xử lý FORM và các dữ liệu gửi đi kèm theo với FORM nói riêng. Nên nếu có gì mạo phạm tới website vn-zoom.com thì mong được bỏ qua và góp ý, mình sẽ xử lý ngay khi có yêu cầu. Cám ơn một lần nữa.

Bạn đang muồn tìm hiểu PHP Framework?

Nếu bạn muốn học mô hình MVC thì nên lựa chọn Codeigniter, đây là framework đơn giản và dễ sử dụng nhất. Tham khảo khóa học Codeigniter để dễ dàng nắm bắt  hơn.

Nguồn: freetuts.net