Seite 1 von 2

Cronjobs fehler ?

Verfasst: Fr 22. Dez 2006, 00:51
von Raziel
Ich habe ein Problem mit den cronjobs!

Es werden keine mails versendet, weder die errinnerung ( hab verliehene filme seit 8 tagen, limit steht auf 6 ) noch neue filme, noch mails für neue kommentare. Ich lassen den Chron 2 mal am tag laufen.

Wenn ich die cronjob.php aufrufe kommt nur ne weisse seite, also auch kein fehler. Wodran kann das liegen ?

Re: Cronjobs fehler ?

Verfasst: Fr 22. Dez 2006, 00:58
von der-domi
Bekommt das gar kein Benutzer oder nur einige keine? Kontrolliere doch mal bitte, ob bei einigen Benutzern das "hat Zugriff"-Bit nicht gesetzt ist.

Verfasst: Fr 22. Dez 2006, 01:00
von Raziel
bei allen benutzern ist "hat zugriff" gesetzt.

keiner bekommt mails ... an der versandart liegt es nicht, da nachrichten und anmeldemails gesendet werden.

müsste meiner meinung nach irgendwie am cronjob liegen.

Verfasst: Fr 22. Dez 2006, 01:04
von der-domi
Ahh. Die Erinnerung wird nur geschickt, wenn der Film genau 6 Tage oder das Vielfache von 6 verliehen ist. Also niemals jeden Tag - wenn du nicht einen Tag eingestellt hast.

Also stelle einfach auf 8 Tage um und probiere es nochmal.

Verfasst: Fr 22. Dez 2006, 01:06
von Raziel
tut sich leider auch nichts

und was ist mit den neuen filmen ? :)

Verfasst: Fr 22. Dez 2006, 01:14
von der-domi
Mmmh. Du verwendest MySQL kleiner 4.1, oder? Da ist eine Abfrage, das es nur mit 4.1 und höher funktioniert. Ich weiß aber nicht mehr warum. Sollte eigentlich auch funktionieren. Ist glaube noch, von alten Versionen.

Ersetze mal $myDB->MySQL_Ver durch TRUE in den den 3 if-Abfragen in Zeile 52, 96 und 149.

Verfasst: Fr 22. Dez 2006, 01:23
von Raziel
ja ich benutz kleiner 4.1 ...

hmmm ... ist jetzt wahrscheinlich ein verständigungsproblem ... das gesamte "$myDB->MySQL_Ver" durch TRUE ersetzen ?
dann gibts nen ganzen haufen fehler...

Verfasst: Fr 22. Dez 2006, 01:29
von der-domi
Aber nur die drei Stück. Also für das Erste wäre es:

Code: Alles auswählen

if ( $settings->erinnereTage > 0 && TRUE )

Verfasst: Fr 22. Dez 2006, 01:30
von Raziel
Dann kommen beim aufrufen folgende fehler:
SELECT Titel, myFilmID, COLLECT_CollectID, DATEDIFF( CURDATE(), ausgeliehenAm ) AS Tage FROM filme_DISCS di INNER JOIN filme_FILME ON FILME_FilmID=FilmID WHERE di.USERS_UserID=3 HAVING Tage%9=0 AND Tage!=0 ORDER BY Tage DESC, Titel

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '( CURDATE(), ausgeliehenAm ) AS Tage FROM filme_DISCS di INNER

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /srv/www/htdocs/web7/html/moviebase/classes/class.db.php on line 127

SELECT FilmID, Titel, Land, Jahr FROM filme_FILME fi WHERE DATEDIFF( CURDATE(), DATE(inserted) ) = 1 AND 1=1

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '( CURDATE(), DATE(inserted) ) = 1 AND 1=1' at line 1

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /srv/www/htdocs/web7/html/moviebase/classes/class.db.php on line 127

SELECT FilmID, Titel, Land, Jahr FROM filme_FILME fi WHERE DATEDIFF( CURDATE(), DATE(inserted) ) = 1 AND 1=1

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '( CURDATE(), DATE(inserted) ) = 1 AND 1=1' at line 1

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /srv/www/htdocs/web7/html/moviebase/classes/class.db.php on line 127

SELECT Titel, UserName FROM filme_FILME INNER JOIN filme_FILME_USERS fu ON FilmID=fu.FILME_FilmID INNER JOIN filme_USERS ON UserID=fu.USERS_UserID WHERE DATEDIFF( CURDATE(), DATE(Zeitpunkt) ) = 1 AND LENGTH(Kommentar) AND istNeu

You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '( CURDATE(), DATE(Zeitpunkt) ) = 1 AND LENGTH(Kommentar) AND is

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /srv/www/htdocs/web7/html/moviebase/classes/class.db.php on line 127

Verfasst: Fr 22. Dez 2006, 02:26
von der-domi
Okay, es war wegen dieser Funktion. Bei der Kontakteverwaltung hatte ich das gleiche Problem und habe es durch eine andere Funktion behoben.

Probiere doch mal bitte die Version aus!

Und wech!

Verfasst: Fr 22. Dez 2006, 08:38
von Raziel
leider immer noch nichts ... keine fehler, keine mails :?

Verfasst: Fr 22. Dez 2006, 13:42
von der-domi
Ich habe die Variable "MySQL_Ver" noch nicht geändert gehabt und der Debug-Modus war noch ein. Probier's nochmal. Ich habe die Datei aktualisiert.

Verfasst: Fr 22. Dez 2006, 15:31
von Raziel
Alles klar ! Die info für neue Filme klappt jetzt. Eine Erinnerung kam noch nicht, aber kann ja auch noch kommen :)

Vielen dank für deine schnelle hilfe !

cronjob.php unter w2k2 Server automatisch starten

Verfasst: Mi 31. Jan 2007, 09:30
von Nike-Shox-69
Hallo Dominik, Hallo Raziel,

könnt Ihr mir vielleicht einen Tip geben, wie ich diese Cronjob.php seite automatisch unter windows laufen lassen kann? Ich habe meinen eigenen web-Server unter w2k3 laufen, und würde gerne die Vorteile des cronjob skripts benutzen....

Danke schon mal im Voraus

Verfasst: Mi 31. Jan 2007, 10:15
von Raziel
Hallo Nike-Shox-69

Wenn du keine eigenen Cronjobs auf deinem Server anlegen kannst, empfehle ich http://www.cronjob.de

Dort kannst du einfach die URL zur cronjob.php aufrufen lassen und die Zeit einstellen, wann der Cronjob ausgeführt werden soll.

Wenn du dir dort nicht extra einen account anlegen möchtest, kannst du mich auch gerne kontaktieren, dann lege ich einen cronjob auf meinem account an, der 1 mal täglich ausgeführt wird ( die zeit kannst du dir aussuchen ;) )

Ich hoffe ich konnte dir helfen und dominik ein wenig arbeit abnehmen ;)

mfg