10/10/2018, 09:44

Làm sao để tự động thực hiện lệnh sau một khoảng thời gian

- Mình thấy có nhiều trang web PHP nó tự động thực hiện một lệnh nào đó sau một khoảng thời gian nhất định. Ví dụ như xóa user sau 30 nếu user không chịu đăng nhập ( tự động, người không cần can thiệp ).

- Xin hỏi có hàm nào hay thuật toán nào để làm một điều tương tự như thế không ?

- Thanks!
freshgraduate09 viết 11:49 ngày 10/10/2018
trong javascript có hàm setInterval(function_name,interval)

sau interval miliseconds, hàm function_name sẽ được thực hiện

nó dùng kỹ thuật ajax gọi về trang php tại server để xử lý, sau đó update kêt quả trở lại trang hiện tại, mọi thứ được thực hiện ngầm, ko ảnh hưởng gì đến giao diện đang tương tác
thuankkk viết 11:59 ngày 10/10/2018
Xài cron jobs thoai.
Bạn tạo một file php, sau đó tạo cron job với URL là file php đó.
Free cron jobs: www.setcronjob.com
ngoc_viet08 viết 11:58 ngày 10/10/2018
nếu vấn đề của bạn có thể xử lý đơn giản hơn (ajax nhiều là phiền à )
khi user login lưu thời gian login lại . sau đó khi người dùng click thì kiểm tra xem user đã login trước đó >30 . nếu đã qua 30 thì bắt login lại .
còn việc lưu thì có thể là tại db hoặc dùng cookie để khỏi query db cho nặng server
fotech_nd viết 11:48 ngày 10/10/2018
Được gửi bởi ngoc_viet08
nếu vấn đề của bạn có thể xử lý đơn giản hơn (ajax nhiều là phiền à )
khi user login lưu thời gian login lại . sau đó khi người dùng click thì kiểm tra xem user đã login trước đó >30 . nếu đã qua 30 thì bắt login lại .
còn việc lưu thì có thể là tại db hoặc dùng cookie để khỏi query db cho nặng server
Focus vào câu hỏi đi.
bvnguyen viết 11:48 ngày 10/10/2018
đơn giản không cần ajax
dùng javascipt setInterval hàm mở cửa sổ với address có dạng như delete.php?user_id=12 chẳng hạn, set trong 1000 mili giây
thuankkk viết 11:46 ngày 10/10/2018
Ví dụ như xóa user sau 30 nếu user không chịu đăng nhập ( tự động, người không cần can thiệp ).
30 giây/phút hay ngày?
Nếu bác muốn xóa user nếu ko login sau 30 ngày thì chỉ cần tạo cron jobs chạy mỗi ngày 1 lần là xong.
tuanit85 viết 11:54 ngày 10/10/2018
Không cần dùng Ajax vẫn làm được mà.
diepnghitinh viết 11:55 ngày 10/10/2018
lưu thời gian hiện tại vào session hay cookie gì đó! Sau đó lấy thời gian sau trừ đi thời gian trước, nếu nó = thời gian mà mình quy định sẵn vd: 30s thì bắt đầu thực hiện hành động!
kenphan19 viết 11:45 ngày 10/10/2018
lúc trước có đọc 1 tut có viết về vấn đề này ... cụ thể như thế này.
dùng setInterval() để để gọi ajax liên tục và kiểm tra thời gian hết hạn của session ... khi session hết hạn thì cho ra 1 bảng confirm(), nếu ok thì nó sẽ gọi ajax và + thêm thời gian lưu session ... còn cancel thì xóa session đi. vấn đề chỉ có thế ... còn lại tự code
Bài liên quan
0