Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Danh sách đen IP trong PHP + MySQL

Truy vấn sau không cần chạy thường xuyên và có thể được chuyển sang công việc cron:

DELETE FROM failures WHERE release_time < ?;

Truy vấn "boolean" này sẽ trả về 1 nếu người đó bị đưa vào danh sách đen, 0 nếu không:

SELECT
  COUNT(ip_address) as blacklisted
FROM blacklist
WHERE
  ip_address = ? AND
  release_time > ? AND
  failures > 5

Nó có thể tăng tốc mọi thứ vì bạn không sử dụng PHP để đếm hàng và so sánh số:

if ($row['blacklisted']) { /* ... */ }

Tôi không nghĩ rằng bạn thực sự có thể tránh được cái cuối cùng.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm thế nào để chuyển đổi các ký tự lạ này? (à «, Ã, ì, ù, Ã)

  2. Hibernate:Tự động tạo / cập nhật các bảng db dựa trên các lớp thực thể

  3. Cú pháp TẠO CHỨC NĂNG trong MySQL

  4. MySQL hiện tại () +1 ngày

  5. Hiển thị mysql trong bảng html với Node.js