hanns: set_time_limit(0); abbruch aber wie???

hallo,

ich vewende set_time_limit(0); in php.

die scripte rufe ich offline über meinen browser auf.

gelegentlich kommt es vor, dass ich ein skript, was sagen
wir 60 minuten dauert. abbrechen möchte.

wie kann ich das? habe foxserv installiert.

gruss
hanns

  1. Hallo,
    entweder:
    set_time_limit(3600);

    oder

    du nimmst beim Start den Timestamp, dann innerhalb des Programmes, dort wo er solange (60 Min) rechnet, überprüfst du ob die Differrenz zwischen dem Starttimestamp und dem jetzigen, wenn 3600 Sekunden unterschied sind, dann beendest du das Programm mit exit; oder mit break; die Schleife.

    MFG
    Andavos

    1. Hallo,
      entweder:
      set_time_limit(3600);

      ich glaube ich bin falsch verstanden worden.

      ich will nicht nach 3600 abbrechen, sondern
      wann es mir gerade so passt.
      und wann es mir passt, dass ist rein zufällig.

      kurz gesagt: ich will jederzeit abbrechen können und
      nicht nach einer im skrip vorgebenen zeit.

      1. Hallo,
        du kennst doch das schöne Stop/Abbrechschild, oder??

        MFG
        Andavos

  2. Hello,

    ich vewende set_time_limit(0); in php.

    die scripte rufe ich offline über meinen browser auf.

    gelegentlich kommt es vor, dass ich ein skript, was sagen
    wir 60 minuten dauert. abbrechen möchte.

    Dazu hatte ich hier Ende letzten Jahres eine längere Abhandlung verfasst, leider noch nicht als Tipps und Tricks. Versuch bitte mal, sie zu finden, und sag dann Bescheid.

    Suchvorschlag:

    author:tom  set_time_limit

    Vorgehensweise für die Vorgangskontrolle:

    Vorgangsnummer erzeugen,
    Prozessnummer ermitteln
    Startzeitpunkt, maximale Laufzeit, Bemerkungen in DB eintragen

    im Script eine Schleife durchlaufen, die immer nachfragt, ob der aktuelle Prozess noch weiterlaufen darf. Wenn nicht, dann eben eine Meldung ins Log schreiben, in der DB den "stopped-Marker" setzen und abbrechen lassen, sonst nächsten Schleifendurchlauf.

    Mit einem extra Script kann man nun die DB abfragen auf alle "non stopped processes" und ggf. den Zwangsstopp-Marker, der in der Schleife des Prozesses immer abgefragt wird, setzen.

    Alternativ kann man auch die Brutalmethode nutzen und ein "kill -9 <PID>" mittels system() absetzen.

    Harzliche Grüße aus http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau