![Phân tích tư tưởng của nhân dân qua đoạn thơ: Những người vợ nhớ chồng… Những cuộc đời đã hóa sông núi ta trong Đất nước của Nguyễn Khoa Điềm](https://timtailieu.net/upload/document/136415/phan-tich-tu-tuong-cua-nhan-dan-qua-doan-tho-039-039-nhung-nguoi-vo-nho-chong-nhung-cuoc-doi-da-hoa-song-nui-ta-039-039-trong-dat-nuoc-cua-nguyen-khoa-136415.jpg)
PHP cơ bản - Bài 14: Viết ứng dụng tạo mã xác nhận bằng PHP
Số trang: 7
Loại file: pdf
Dung lượng: 270.39 KB
Lượt xem: 8
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Viết ứng dụng tạo mã xác nhận bằng PHP Trong bài này, chúng ta tiếp tục tìm hiểu phương pháp tạo dãy số ngẫu nhiên để chống tấn công flood dữ liệu. Hoặc ai đó cố tình spam khiến cơ sở dữ liệu của chúng ta không thể xử lý tiếp được. Ở những bài trước, chúng ta đã tìm hiểu về cách làm việc với PHP kết hợp MYSQL trong việc xây dựng hệ thống thêm, sửa, xóa và quản lý user.
Nội dung trích xuất từ tài liệu:
PHP cơ bản - Bài 14: Viết ứng dụng tạo mã xác nhận bằng PHPPHP cơ bản - Bài 14:Viết ứng dụng tạo mãxác nhận bằng PHPViết ứng dụng tạo mã xác nhận bằng PHPTrong bài này, chúng ta tiếp tục tìm hiểu phương pháp tạo dãy số ngẫu nhiênđể chống tấn công flood dữ liệu. Hoặc ai đó cố tình spam khiến cơ sở dữ liệucủa chúng ta không thể xử lý tiếp được.Ở những bài trước, chúng ta đã tìm hiểu về cách làm việc với PHP kết hợpMYSQL trong việc xây dựng hệ thống thêm, sửa, xóa và quản lý user.Trước tiên, chúng ta tiến hành tạo form HTML đơn giản để thực thi thao tácnhập liệu như sau:Chúng ta chú ý phần hình ảnh, tại đây tôi truyền đường dẫn chính là liên kếttới trang random_image.php. Trang này sẽ thực thi công việc tạo ra nhữngbức hình có dãy số ngẫu nhiên để phần nhập liệu của người sử dụng thamchiếu tới.Tiếp theo, chúng ta khởi tạo file random_image.php để lấy ra dãy số ngẫunhiên và phát sinh chúng ngay trên tấm hình cho người truy cập nhập liệu.Để làm được điều đó. Chúng ta sẽ khởi tạo session và lưu dãy số nhập liệuđó vào session của mình, sau đó so khớp với trang form bên kia.Đầu tiên chúng ta sử dụng hàm md5 và ran để mã hóa các ký tự bao gồm sốvà chữ cái. Khi sử dụng hàm md5() ký tự phát sinh sẽ lên tới 32 ký tự. Vàchúng ta chỉ lấy duy nhất 5 ký tự từ chuỗi mã hóa đó bằng hàm substr. Tiếptục ta lưu đoạn mã hóa này trong session cụ thể$_SESSION[security_code], để tại trang form ta sẽ sử dụng so sánh vớiphần nhập liệu của người sử dụng.Vậy nên đoạn code dưới sẽ giải quyết các tình huống này.Kế đến ta khởi tạo tấm hình với chiều rộng và chiều cao mà ta thiết lậpthông qua hàm ImageCreate() . Và tiếp tục khai báo 2 màu chính là trắng vàđen bằng hàm ImageColorAllocate($image, red, green, blue ). Hàm này sẽtạo ra một màu sắc từ hệ màu RGB trên tấm hình mà chúng ta vừa khởi tạo.Tiếp tục ta đổ background của tấm hình sẽ là màu đen và chữ xuất hiện trêntấm hình sẽ là màu trắng bằng hàm ImageFill() và hàm ImageString(). HàmImageString có một số đối số cơ bản như sau: ImageString($image, 5, 30, 6,$security_code, $white); Trong đó:+ $image là hình mà chúng ta khởi tạo.+ 5: là font-size mà chúng ta quy ước cho ký tự xuất hiện trên hình.+ 30: là khoảng cách bên trái của tấm hình.+ 6 : là khoảng cách từ trên của tấm hình.+ $security_code: là đoạn code sau khi chúng ta cắt ra ở trên.+ $white: là màu sắc mà chúng ta đã sử dụng hàm ImageColorAllocate() ởtrên để khởi tạo ra màu trắng.Kế tới chúng ta sẽ sử dụng lệnh header để trả nội dung này trở về dữ liệudạng hình. Và tiến hành khởi tạo định dạng cho file hình mà chúng ta vừatạo là JPG đồng thời giải phóng hình tạm được sử dụng để khợi tạo ra tấmhình này bằng đoạn code sau:Để dễ quản lý chúng ta sẽ đặt tất cả đoạn code trên vào trong 1 hàm để dễ sửdụng và quản lý chúng tốt hơn. Vậy toàn bộ đoạn code trong trangrandom_image.php này như sau.Tiếp tục, trong trang form chúng ta phải khởi tạo session để chúng nhậnđược các giá trị mà ta đã khởi tạo và sử dụng ở trang random_image, kế tớita kiểm tra xem người dùng có nhấn submit chưa. Nếu có ta sẽ tiếp tục kiểmtra xem người dùng nhập vào textbox có đúng là dãy số hiển thị trên hìnhảnh hay không. Và xuất ra thông báo tương ứng với nội dung của ngườinhập liệu. (xem lại bài 3: Xử lý giá trị form trong PHP)Sau đây là toàn bộ code của trang form.php.Tổng kết:Qua bài học này, chúng ta đã hiệu được nguyên tắc xử lý và những hàm cơbản mà 1 hệ thống khi sử dụng captcha cần phải vận dụng như thế nào. Vàtất nhiên hàm xử lý captcha này cũng chỉ mang kiến trúc tương đối. Để tăngcường tính bảo mật hơn, các bạn nên sử dụng 1 số hàm chuyên dụng nhằmmã hóa hoặc gây nội dung khó nhìn hơn để chặn các tools hoặc các hệ thốngbot có thể qua mặt thông số này.
Nội dung trích xuất từ tài liệu:
PHP cơ bản - Bài 14: Viết ứng dụng tạo mã xác nhận bằng PHPPHP cơ bản - Bài 14:Viết ứng dụng tạo mãxác nhận bằng PHPViết ứng dụng tạo mã xác nhận bằng PHPTrong bài này, chúng ta tiếp tục tìm hiểu phương pháp tạo dãy số ngẫu nhiênđể chống tấn công flood dữ liệu. Hoặc ai đó cố tình spam khiến cơ sở dữ liệucủa chúng ta không thể xử lý tiếp được.Ở những bài trước, chúng ta đã tìm hiểu về cách làm việc với PHP kết hợpMYSQL trong việc xây dựng hệ thống thêm, sửa, xóa và quản lý user.Trước tiên, chúng ta tiến hành tạo form HTML đơn giản để thực thi thao tácnhập liệu như sau:Chúng ta chú ý phần hình ảnh, tại đây tôi truyền đường dẫn chính là liên kếttới trang random_image.php. Trang này sẽ thực thi công việc tạo ra nhữngbức hình có dãy số ngẫu nhiên để phần nhập liệu của người sử dụng thamchiếu tới.Tiếp theo, chúng ta khởi tạo file random_image.php để lấy ra dãy số ngẫunhiên và phát sinh chúng ngay trên tấm hình cho người truy cập nhập liệu.Để làm được điều đó. Chúng ta sẽ khởi tạo session và lưu dãy số nhập liệuđó vào session của mình, sau đó so khớp với trang form bên kia.Đầu tiên chúng ta sử dụng hàm md5 và ran để mã hóa các ký tự bao gồm sốvà chữ cái. Khi sử dụng hàm md5() ký tự phát sinh sẽ lên tới 32 ký tự. Vàchúng ta chỉ lấy duy nhất 5 ký tự từ chuỗi mã hóa đó bằng hàm substr. Tiếptục ta lưu đoạn mã hóa này trong session cụ thể$_SESSION[security_code], để tại trang form ta sẽ sử dụng so sánh vớiphần nhập liệu của người sử dụng.Vậy nên đoạn code dưới sẽ giải quyết các tình huống này.Kế đến ta khởi tạo tấm hình với chiều rộng và chiều cao mà ta thiết lậpthông qua hàm ImageCreate() . Và tiếp tục khai báo 2 màu chính là trắng vàđen bằng hàm ImageColorAllocate($image, red, green, blue ). Hàm này sẽtạo ra một màu sắc từ hệ màu RGB trên tấm hình mà chúng ta vừa khởi tạo.Tiếp tục ta đổ background của tấm hình sẽ là màu đen và chữ xuất hiện trêntấm hình sẽ là màu trắng bằng hàm ImageFill() và hàm ImageString(). HàmImageString có một số đối số cơ bản như sau: ImageString($image, 5, 30, 6,$security_code, $white); Trong đó:+ $image là hình mà chúng ta khởi tạo.+ 5: là font-size mà chúng ta quy ước cho ký tự xuất hiện trên hình.+ 30: là khoảng cách bên trái của tấm hình.+ 6 : là khoảng cách từ trên của tấm hình.+ $security_code: là đoạn code sau khi chúng ta cắt ra ở trên.+ $white: là màu sắc mà chúng ta đã sử dụng hàm ImageColorAllocate() ởtrên để khởi tạo ra màu trắng.Kế tới chúng ta sẽ sử dụng lệnh header để trả nội dung này trở về dữ liệudạng hình. Và tiến hành khởi tạo định dạng cho file hình mà chúng ta vừatạo là JPG đồng thời giải phóng hình tạm được sử dụng để khợi tạo ra tấmhình này bằng đoạn code sau:Để dễ quản lý chúng ta sẽ đặt tất cả đoạn code trên vào trong 1 hàm để dễ sửdụng và quản lý chúng tốt hơn. Vậy toàn bộ đoạn code trong trangrandom_image.php này như sau.Tiếp tục, trong trang form chúng ta phải khởi tạo session để chúng nhậnđược các giá trị mà ta đã khởi tạo và sử dụng ở trang random_image, kế tớita kiểm tra xem người dùng có nhấn submit chưa. Nếu có ta sẽ tiếp tục kiểmtra xem người dùng nhập vào textbox có đúng là dãy số hiển thị trên hìnhảnh hay không. Và xuất ra thông báo tương ứng với nội dung của ngườinhập liệu. (xem lại bài 3: Xử lý giá trị form trong PHP)Sau đây là toàn bộ code của trang form.php.Tổng kết:Qua bài học này, chúng ta đã hiệu được nguyên tắc xử lý và những hàm cơbản mà 1 hệ thống khi sử dụng captcha cần phải vận dụng như thế nào. Vàtất nhiên hàm xử lý captcha này cũng chỉ mang kiến trúc tương đối. Để tăngcường tính bảo mật hơn, các bạn nên sử dụng 1 số hàm chuyên dụng nhằmmã hóa hoặc gây nội dung khó nhìn hơn để chặn các tools hoặc các hệ thốngbot có thể qua mặt thông số này.
Tìm kiếm theo từ khóa liên quan:
mã xác nhận là gì tìm hiểu về mã xác nhận lập trình web giáo trình php thiết kế web với php lập trình phpTài liệu liên quan:
-
[Thảo luận] Học PHP như thế nào khi bạn chưa biết gì về lập trình?
5 trang 134 0 0 -
161 trang 134 1 0
-
Bài giảng Lập trình web nâng cao: Chương 8 - Trường ĐH Văn Hiến
36 trang 121 1 0 -
MỘT SỐ ĐIỂM CẦN CHÚ Ý KHI THIẾT KẾ WEB
5 trang 115 0 0 -
GIÁO TRÌNH LẬP TRÌNH WEB_PHẦN 2_BÀI 3
3 trang 105 0 0 -
Lập Trình Web: Các trang quản trị trong PHP - GV: Trần Đình Nghĩa
8 trang 105 0 0 -
231 trang 95 1 0
-
101 trang 94 2 0
-
Bài giảng Lập trình web nâng cao: Chương 7 - Trường ĐH Văn Hiến
16 trang 66 1 0 -
Bài giảng Lập trình Web ASP.Net với C#: Chương 9 - Th.S Phạm Đào Minh Vũ
55 trang 52 0 0