Thực hiện chức năng cứ mỗi giờ thì kiểm tra các tin và tự động cập nhật datetime up tin như thế nào?

Em mới học và có vần để hỏi hơi ngu một tý ạ.
Trong Mysql em có các tin trong đó có các trường datetime số lần Up tin.
Em mong muốn cứ 1 tiếng vào thời khắc giao giờ thì kiểm tra các tin còn lần up thì tự động update datetime. Như vậy thì phải làm thế nào ạ.

Hi Mạnh,

Tớ không rõ lắm, cơ mà số lần up news nên là 1 số nguyên chứ sao lại là “các trường datetime”?

Cậu có thể tự viết batch + cronjob, cứ 1h thì làm việc đó.

Hope it helps!

5 Likes

Ý là sử dụng điều kiện up tin là số lần. Update trường datetime để tin đó nó lên đầu cho đến khi hết số lần up. Nhưng mình không muốn nó up khi xem tin mà định kỳ hàng giờ thì kiểm tra và up theo các điều kiện ý.

Ừ cậu, vậy thì cronjob là thứ cậu có thể cân nhắc :smile: Nó sẽ trigger batch/script mỗi giờ cho cậu, và cậu có thể tự định nghĩa thao tác mà cậu muốn.
Cậu cũng có thể tự implement scheduler của riêng mình với Redis (hoặc dùng project này chẳng hạn).

5 Likes

Cảm ơn vì đã giúp mình. Mình muốn chạy môt URL ở chế độ chạy background trên server với Cron job mình đọc nhiều hướng dẫn thấy toàn là mở file .php thôi. Mình muốn chạy kiêu http://url/index.php?m=exemple&id=1 background qua cronjob được không ạ.

bạn phải hiểu cronjob là gì đã thì mới làm được chứ. Khi đã hiểu cronjob là gì thì mới hiểu là tại sao lại dùng file .php hoặc các file dạng khác

3 Likes

Chạy trên server thì không cần phải có URL, nếu có URL bạn sẽ làm nặng tải web server vô ích. Chỉ dùng URL khi bạn đang chạy ở client.

Để chạy PHP trên server có tham số, bạn tìm hiểu PHP CLi và tham khảo thêm bài này https://www.php.net/manual/en/reserved.variables.argv.php

4 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?