2010-02-10 4 views
8

Ich verwende Codeigniter. Ich möchte wissen, wie man einen Cronjob einrichtet, um eine Tabelle auf auslaufende Benutzer zu überprüfen und Daten in eine andere Tabelle mit der Liste der auslaufenden Benutzer einzufügen. Wie geht das.CRON-Job für Codeigniter

Als ich versuchte, einen Skript mit Controller und Modell zu schreiben, um die Tabelle einzufügen:/Class 'Controller' nicht gefunden in /home/content/html/test/Live:

Fatal error application/controllers/cron.php on line

+2

Also ... die Frage ist der Cron-Teil oder der Codeigniter-Teil? –

+0

Warum müssen Sie Daten von einer Tabelle in eine andere einfügen? – Randell

+0

CRON? Wie ist es ein Akronym? Oder um deutlich zu machen, dass wir nicht von Ihren regelmäßigen, alltäglichen Jobs sprechen? – Matchu

Antwort

-2

Meine Hosting-Site ist godaddy, die die Option zum Erstellen eines Cron geben. Alles, was wir tun müssen, ist eine plainphp-Seite zu schreiben, um den Job zu erledigen, mit sql-Verbindung und allem was dazu gehört und einfach auf den godaddy-Server hochladen und den Cron erstellen. Das ist es. Job ist einfacher.

2

Dies könnte nicht das sein, was Sie suchen, aber es funktioniert für mich ganz gut:

Ihre Cron-Job-Logik erstellen als ‚normale‘ Controller-Funktion.

Dann in Ihrem Standard, Nicht-CI, PHP cronjob Datei laden einfach die URL über

file_get_contents('http:example.com/cronjob/'); 

Dies wird die URL behandeln, als wie von einem anderen Benutzer getroffen zu werden und den gesamten CI Rahmen wird zu deiner Verfügung.

+0

... was in Ordnung ist, wenn Sie möchten, dass die Logik Ihres Cron-Jobs dem Netzwerk ausgesetzt ist, ansonsten nicht so gut. CI bietet einen Mechanismus zur Ausführung über den CL aus einem Grund. – Madbreaks

+1

Wie genau stellt das die Logik dar? Es ermöglicht anderen nur, dieselbe Prozedur aufzurufen. Wenn das ein Problem ist, können Sie der Anfrage eine Signatur hinzufügen oder sie nur von ihrer eigenen IP anrufen. –

+0

Richtig - es ermöglicht dem Internet, Ihre Logik auszuführen. Ist das wünschenswert, was ein cron-gesteuerter Prozess sein soll? Je? Nein. Ja, Sie können IP Filtering machen, aber am Ende helfen Sie nur von Anfang an bei der falschen Vorgehensweise. Verwenden Sie die Tools, die CodeIgniter Ihnen zur Verfügung stellt. http://ellislab.com/codeigniter/user-guide/general/cli.html – Madbreaks