CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
Off Topic Area Hierein gehört alles, was nichts mit PHP, MySQL, Apache oder ähnlichem zu tun hat |
25.05.2003, 18:58:41
|
Anfänger
|
|
Registriert seit: May 2003
Ort: Gießen / Hessen / Germany
Beiträge: 7
|
|
Danke für die Anregungen! Hat mir extremst weiter geholfen, vor allem Dein Tip, Matt. Leider hat das Program in der Form, wie Du es geschrieben hast, einen Laufzeitfehler gegeben... kann aber an meiner Apache Version liegen... oder an easyPHP oder oder oder...
Meine Lösung sieht jetzt so aus:
PHP-Code:
<?PHP
ignore_user_abort(true);
ini_set("max_execution_time",0);
while (1) {
if ( ! tickfunction() ) { exit(); }
sleep(10);
}
function tickfunction() {
$file = fopen("state.txt","r");
$ausgabe = fopen("ausgabe.txt","a");
$contents = fread($file, filesize("state.txt"));
if ( $contents=="run" ) {
fwrite($ausgabe,"Hallon");
} elseif ( $contents=="shutdown" ) { return false; }
return true;
}
?>
|
28.05.2003, 11:02:50
|
|
Member
|
|
Registriert seit: Mar 2002
Ort: Port 80, localhost-city, 127/0/0/1
Beiträge: 878
|
|
hm.. es scheint, als führt die declare funktion von PHP dazu, dass Apache sich aufhängt...
Hat irgendjemand eine ahnung, was man da machen kann, bzw. was der fehler ist? (PHP 4.3.1 ; Apache 1.3; Windows 2000)
|
28.05.2003, 12:51:18
|
Anfänger
|
|
Registriert seit: May 2003
Ort: Gießen / Hessen / Germany
Beiträge: 7
|
|
hmmm ja... das Problem hatte ich auch... hatte es aber auf easyPHP geschoben. dieses benutze ich nämlich für die Auswertung der PHP Files.......
ansonsten werde ich jetzt wohl an der Uni einen cron-job einrichten... also eben halt von nem externen Server........ ist wohl die beste Lösung..........
|
29.05.2003, 11:43:16
|
Member
|
|
Registriert seit: Mar 2002
Beiträge: 548
|
|
Das Problem mit declare() in Verbindung mit register_tick_function() unter Windows ist schon lange bekannt. Ich vermute aber, dass die PHP-Devs diesen Bug nicht beheben können, da es sich um einen Fehler im Win32-Apache handelt.
Vielleicht funktioniert es mit dem MS-IIS besser, wer weiß...
Jedenfalls läuft es unter Unix perfekt. :)
|
30.05.2003, 12:03:03
|
|
Member
|
|
Registriert seit: Mar 2002
Ort: Port 80, localhost-city, 127/0/0/1
Beiträge: 878
|
|
ich werde wohl mal apache 2 aufsetzen auf meiner kiste, vielleicht löst es das problem, nur im moment hab ich grad keine lust dazu ;)
|
30.05.2003, 19:00:28
|
Member
|
|
Registriert seit: Mar 2002
Beiträge: 548
|
|
Die Mühe kannst du dir sparen. Der Bug besteht mit Apache2 immernoch :(
|
30.05.2003, 19:08:27
|
|
Member
|
|
Registriert seit: Mar 2002
Ort: Port 80, localhost-city, 127/0/0/1
Beiträge: 878
|
|
schade :(
Ich hatte schon einige nette ideen, was man mit dem zeugs alles anstellen kann!
funzt das ding, wenn PHP in der CGI Variante unter Windows ausgeführt wird? Dann hat Apache ja ansich nichts mit der sache zu tun!
|
30.05.2003, 19:15:59
|
Member
|
|
Registriert seit: Mar 2002
Beiträge: 548
|
|
Keine Ahnung. Könnte mir aber gut vorstellen, dass es so funktioniert.
Allerdings ist mir PHP als CGI einfach zu lahm - habs schon ewig nicht mehr benutzt - da verzichte ich lieber auf Ticks ;)
|
30.05.2003, 23:13:32
|
|
Member
|
|
Registriert seit: Mar 2002
Ort: Port 80, localhost-city, 127/0/0/1
Beiträge: 878
|
|
zum lokalen entwickeln wird es reichen denke ich, wenn es als cgi rennt, aber ich bin ehrlichgesagt glücklich über den zustand, dass es das nicht tut, weil man in der modulversion doch einige features mehr hat. Also entweder das lassen, oder:
AddType application/x-php-cgi .phpc
Action application/x-php-cgi c:phpphp.exe
;)
dann hat man beides ;)
|
01.06.2003, 19:00:05
|
Member
|
|
Registriert seit: Mar 2002
Beiträge: 548
|
|
Eine gute Idee, Matt! Ich dachte bis jetzt immer, dass PHP nur mit einem bestimmten MIME-Typen funktioniert (application/x-httpd-php) - wieder was gelernt.
Und schon funktionieren die Ticks =)
Aber nochmal zurück zu deiner "Chronjob" Lösung:
Ich verstehe nicht ganz, wozu man die Ticks benötigt.
PHP-Code:
ignore_user_abort(true); #ein user abbruch lässt das script trotzdem weiterlaufen!
ini_set("max_execution_time",0); #wird nie aufhören
function mychronjobs()
{
$file=fopen("state.txt","r");
$contents = fread ($file, filesize ($filename));
if($contents="run")
{
print "tick ausgeführt";
#Hier gehört der code für deinen Ticker rein!
}elseif($contents="shutdown") { exit();}
}
while(1)
{
mychronjobs();
sleep(60*60); #1 Stunde pause
}
...sollte genauso funktionieren.
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 07:49:28 Uhr.
|