Bạn nên sử dụng cái nào để làm sạch một địa chỉ PHP?
Phát triển trang web với PHP đòi hỏi phải tính đến một số cân nhắc. Tại một thời điểm nào đó, nhà phát triển PHP sẽ xử lý dữ liệu do khách truy cập trang web nhập vào. Dữ liệu thường được gửi đến trang web bằng HTTP POST, ví dụ từ biểu mẫu HTML. Vì một trang web có thể được truy cập bởi hàng tỷ người trên khắp Thế giới, rất có thể ai đó sẽ nhập nhầm dữ liệu có định dạng sai hoặc ai đó sẽ thử và nhập dữ liệu có thể gây ra sự cố cho ứng dụng PHP trên máy chủ web. Do đó, nói chung nên kiểm tra dữ liệu đầu vào để nó khớp với định dạng mà ứng dụng PHP có thể sử dụng chính xác Show
Trong bài viết này, một cái nhìn ngắn gọn về dọn dẹp dữ liệu cho PHP được thảo luận. Dọn dẹp dữ liệu đầu vào được gọi là thực hiện dọn dẹp dữ liệu, không chỉ được sử dụng để đảm bảo dữ liệu có định dạng chính xác để xử lý mà còn được sử dụng để ngăn chặn các kỹ thuật chèn mã, ví dụ như cross-site scripting (XSS) hoặc SQL injection. Để thực hành mã trong bài viết này, bạn sẽ cần truy cập vào máy chủ web chạy PHP, hầu hết các gói lưu trữ trang web đơn giản đều hỗ trợ PHP. Ngoài ra, hãy chạy máy chủ web trên máy tính của bạn (ví dụ: chạy PHP trên Windows) Ghi chú. Nếu mã trong bài viết này đã được kiểm tra trên một trang web đang hoạt động, thì hãy xóa mã đó sau khi quá trình kiểm tra kết thúc. Nó cần thêm mã để bảo vệ khỏi bị lạm dụng, ví dụ như một số hình thức kiểm tra chống bot, chẳng hạn như CAPTCHA. Xem bài viết Tek Eye Mã reCAPTCHA để tải xuống để giới thiệu và thử nghiệm để biết ví dụ về việc triển khai reCAPTCHA của Google Bắt đầu với một biểu mẫu HTML đơn giảnĐể thực hành vệ sinh dữ liệu PHP, hãy bắt đầu với một ví dụ đơn giản về PHP xử lý một số dữ liệu. Trong bài viết của Tek Eye Biểu mẫu liên hệ HTML đơn giản cho trang web dựa trên PHP, dữ liệu từ trường tên và thông báo được gửi đến máy chủ web để PHP xử lý Mã trình xử lý biểu mẫu PHP cho ví dụ trên chỉ gửi lại một trang web có dữ liệu đã nhập
Dễ dàng chuyển dữ liệu qua chức năng dọn dẹp trước khi xử lý. Đoạn mã dưới đây cho thấy một chức năng để loại bỏ khoảng trắng không cần thiết, hữu ích trước khi lưu trữ dữ liệu trong trường cơ sở dữ liệu
Sau đó, mã làm sạch dữ liệu bổ sung có thể được thêm vào chức năng Thêm một lệnh gọi tới Đây là mã đầy đủ cho ví dụ trên
Các hàm PHP khác có thể được sử dụng trên dữ liệu đầu vào, ví dụ như dải gạch chéo () hoặc dấu gạch chéo bổ sung () để bỏ trích dẫn hoặc trích dẫn một chuỗi. Mã khử trùng dữ liệu được thêm vào ứng dụng PHP sẽ dành riêng cho mục đích sử dụng dữ liệu đầu vào. Hãy nhớ xem xét cách dữ liệu sẽ được sử dụng để xác định việc làm sạch dữ liệu và kiểm tra dữ liệu cần được áp dụng. Ví dụ: lưu trữ tên tệp đầu vào vào trường cơ sở dữ liệu, bạn có cần đảm bảo rằng không có đường dẫn thư mục không. Ai đó có thể đang cố thao túng ứng dụng bằng các đường dẫn tương đối trong tên tệp Sử dụng Bộ lọc PHP để Vệ sinh và Xác thực Dữ liệuPHP đi kèm với các chức năng bộ lọc tích hợp để giúp dọn dẹp và kiểm tra các loại dữ liệu khác nhau. Sử dụng filter_var() với cờ bộ lọc được chỉ định để khử trùng và xác thực đầu vào. Các loại dữ liệu được hỗ trợ bao gồm
Xem bộ lọc xác thực khi kiểm tra dữ liệu và bộ lọc làm sạch khi dọn dẹp dữ liệu. 1 hỗ trợ các tùy chọn xác thực và xác thực dữ liệu khác nhau thông qua các cờ bộ lọc. Có thể triển khai bộ lọc tùy chỉnh thông qua gọi lạiGhi chú. 1 không hoàn hảo và có thể không hoạt động đối với một số văn bản đầu vào và ngôn ngữ nước ngoài lạ, nhưng hợp lệ. Xem các bình luận trong PHP khác nhau. trang tài liệu mạngVí dụ về bộ lọc PHP xác thực đơn giảnVí dụ PHP POST đơn giản ở trên được mở rộng để xem địa chỉ email có được nhập vào trường tên hay không. Đây là mã để kiểm tra địa chỉ email bằng PHP 1
Ghi chú. Trong tài liệu PHP cho 1, nó nói rằng 'Trả về dữ liệu đã lọc hoặc SAI nếu bộ lọc bị lỗi. ' Do đó, việc sử dụng so sánh giống hệt 2, vì ________ 13 sẽ chỉ trả về _______ 14 hoặc dữ liệu được truyền vào (một chuỗi). Đây là trình xử lý dữ liệu PHP được cập nhật đầy đủ
Đọc tài liệu PHP về các bộ lọc PHP, đặc biệt là các nhận xét về tài liệu này, vì chúng bao gồm các chi tiết khác về hành vi của bộ lọc PHP Làm cách nào để khử trùng đầu vào HTML trong PHP?Các phương pháp làm sạch đầu vào của người dùng bằng PHP. . Sử dụng các phiên bản hiện đại của MySQL và PHP Đặt bộ ký tự một cách rõ ràng. $mysqli->set_charset("utf8"); . Sử dụng bộ ký tự an toàn. . Sử dụng chức năng không gian. . Kiểm tra biến chứa những gì bạn đang mong đợi Làm cách nào để khử trùng một chuỗi PHP?Chúng tôi có thể làm sạch chuỗi bằng cách sử dụng FILTER_SANITIZE_STRING để xóa các thẻ và dấu ngoặc kép khác nhau để làm cho chuỗi an toàn khi sử dụng. Id của cái này là 513.
Làm cách nào để khử trùng và xác thực trong PHP?php // Url trang web mẫu $url = "http. //www. ví dụ. com"; // Xóa tất cả các ký tự không hợp lệ khỏi url $sanitizedUrl = filter_var($url, FILTER_SANITIZE_URL); // Xác thực url trang web if($url == $sanitizedUrl && filter_var($url, . ...
Làm cách nào để khử trùng JSON trong PHP?Trước tiên, hãy phân tích cú pháp JSON thành một mảng PHP, sau đó lọc từng giá trị trong mảng như cách bạn làm với nội dung yêu cầu thông thường, bạn có thể ánh xạ các khóa JSON tới các bộ lọc sơ đồ và cờ/tùy chọn e. g. Điều này có thể đáng để yêu cầu kéo tại trang dự án GitHub của php. Có thể cần thiết thường xuyên để xác thực chuỗi json |