phpbar.de logo

Mailinglisten-Archive

[php] Script in Endlosschleife

[php] Script in Endlosschleife

Markus Dobel easy_(at)_ist.schuldig.de
Sat, 13 May 2000 18:30:01 +0200


"Frieder Müller [fmsid.de]" wrote:
> 
> - Wie kann ich ein PHP Script von einem anderen aus starten ?

Eine Sache ist mir eingefallen... Damit koenntest Du Dir jedoch relativ
schnell in den  Fuss schiessen und Deinen Provider ziemlich veraergern,
sofern dieser es nicht sowieso unterbunden hat. Zumindest umgehst Du
jedoch so die parent/child-beziehungen zwischen deinen Scriptinstanzen.

Dein Script sieht wie folgt aus:

<?php
  ignore_user_abort(1);
  if (!weiterlaufbedingung) { /* siehe vorheriges posting */
    die("Bedingung nicht erfuellt");
  }
  
  do_foo(); /* Die Aktionen, die regelmaessig 
               ausgefuehrt werden sollen */
 
  sleep(60); 
  
  $fp = fsockopen("www.deinserver.de", 80, &$errno, &$errstr, 30); 
  if(!$fp) {
    /* Da klappt was nicht */
    die("oops, this does not work...");
  } else {
    fputs($fp,"GET /pfad/zu/deinem/script.php3 HTTP/1.0\n");
    fputs($fp,"Host: www.deinserver.de\n\n");
    $bla=fgets($fp,1); /* wahrscheinlich nicht einmal noetig... */
    fclose($fp);
  }
?>

Wenn ich nun noch das sleep weglasse, ist der Server ganz schoen schnell
tot. Oops.
Das weiss jedoch vielleicht auch dein Provider und unterbindet dies
einfach (z.B. sperrt er per Firewalling alle TCP-Verbindungen von seinem
Host zu seinem Host:80) 
Damit waere auch dies wieder zunichtegemacht.
Frag doch einfach deinen Hoster, ob er keinen Cronjob fuer Dich
einrichten moechte.

Gruss, Markus


php::bar PHP Wiki   -   Listenarchive