Ergebnis 1 bis 12 von 12
  1. #1
    daWonderer ist offline Routinier
    registriert
    21-04-2007
    Beiträge
    409

    Skriptaufgabe splitten

    Hallo,

    ich habe ein Skript geschrieben. Das Problem, auf einem Server eines Freundes läuft das Skript nur bis zu einem bestimmten Zeitpunkt. Die Zeit ist allerdings kürzer als die eingestellte max_execution_time (120).
    set_time_limit(0) brachte keine Änderung. Auch mit der Einstellung in der .htaccess von max_execution_time funktioniert es nicht .
    Das seltsame: selbst mit error_reporting(E_ALL) kommt keine Meldung beim Beenden des Skriptes .

    1. Was könnte dann die Ursache sein für den Abbruch?
    2. Wie kann ich die Aufgabe des Skriptes splitten, aber gleichzeitig dennoch eine Fortschrittanzeige mit echo ermöglichen?

    Mir fällt im Moment nur die Verwendung von location(...) ein für das Splitten, aber da kann ich echo nicht verwenden.

    Danke schon mal für die Hilfe!

    EDIT: 3. Wie kann ich einem Script ein Array als Parameter übergeben so wie beim POST eines FORMS mit dem Elementnamen name[] ?
    Ok, als Alternative wären da auch globale Variablen möglich.
    Geändert von daWonderer (02-12-2007 um 16:37 Uhr) Grund: more questions...
    greetz, Ralf...

  2. #2
    Avatar von Albu
    Albu ist offline Foren-Gott
    registriert
    04-07-2001
    Beiträge
    13.501

    AW: Skriptaufgabe splitten

    Logfile?
    1. Get people to play Space Taxi
    2. Sell real estates on neptun
    3. Profit!

    IE is not a browser, it is a scream.


    Outside of a dog, a book is man's best friend. Inside of a dog, it's too dark to read.

  3. #3
    daWonderer ist offline Routinier
    registriert
    21-04-2007
    Beiträge
    409

    AW: Skriptaufgabe splitten

    Zitat Zitat von Albu Beitrag anzeigen
    Logfile?
    Könnte ich mir mal anschauen meinst du?
    Moment...

    Hast du evtl.auch nen Vorschlag für 2.?
    Geändert von daWonderer (02-12-2007 um 16:34 Uhr)
    greetz, Ralf...

  4. #4
    daWonderer ist offline Routinier
    registriert
    21-04-2007
    Beiträge
    409

    AW: Skriptaufgabe splitten

    EDIT: In der error.log steht kein Eintrag von der IP welche das Skript aufgerufen hat.

    Seltsam, der Abbruch erfolgt nicht beim 1.Aufruf von readdir() sondern mitten im Einlesen des Ordners.

    Code:
    [...]
    	   if(is_file($fil))
    	   {
    	    if($filStr = file_get_contents($fil))
    	    {
    	     echo 'Datei: '.$path.' : '.$fil.' wird gepackt...<br>';
    #	     bzwrite($zip,$filStr);
    	     $fil = '';
    	    }
    [...]
    Es liegt nicht an der maximalen Ausführungszeit des Skriptes!

    Wenn ich die Zeile mit dem Befehl bzwrite() wie hier auskommentiere läuft das Skript durch bis zum Ende.
    Geändert von daWonderer (02-12-2007 um 17:43 Uhr)
    greetz, Ralf...

  5. #5
    Avatar von rasputin
    rasputin ist offline Lounge-Member
    registriert
    31-10-2001
    Beiträge
    3.102

    AW: Skriptaufgabe splitten

    fehlende datei/verzeichnisrechte?
    wie ist die einstellung von display_errors?

  6. #6
    daWonderer ist offline Routinier
    registriert
    21-04-2007
    Beiträge
    409

    AW: Skriptaufgabe splitten

    Zitat Zitat von rasputin Beitrag anzeigen
    fehlende datei/verzeichnisrechte?
    Der Fehler tritt innerhalb eines Verzeichnisses auf. Die ersten Dateien werden eingelesen und gepackt.
    Dann tritt der Fehler auf. Die Dateien in dem Ordner haben alle die gleichen Dateirechte.

    Zur Erklärung:
    Es ist ein Backup-Script. Im beschriebenen Fall habe ich angegeben, dass alles gepackt werden soll.
    Wenn ich nur dieses Unter-Verzeichnis für das Backup angebe in dem der Fehler auftritt, dann wird das Backup erfolgreich bis zum Ende durchgeführt.
    Es liegt also nicht an der Datei an welcher Stelle das Script abbricht wenn ich alles sichere.

    EDIT:
    Ich glaube es muss doch ein Timeout sein. Wird ein solcher nicht protokolliert in der error.log?
    Nur seltsam, dass das Script schon vor den eingestellten 180s abbricht.
    Wenn ich set_time_limit(5) in einem Test-Script auf diesem Server verwende, dann wird diese Einstellung nicht angenommen (for-Schleife läuft länger).

    Code:
    ini_set("max_execution_time", "5");
    Das ändert auch nichts. Die Einstellungen des Servers lassen sich nicht überschreiben

    wie ist die einstellung von display_errors?
    display_errors = on

    Eigentlich hatte ich gehofft eine Anregung zur Split-Lösung der Script-Aufgabe zu bekommen! Hat jmd.evtl.nen Tipp?
    Damit wäre dann dieses Timeout-Problem auf diesem Server auch gelöst.
    Ansonsten muss ich dann das Split-Script ohne Browser-Ausgaben für den User schreiben.
    Geändert von daWonderer (02-12-2007 um 23:20 Uhr)
    greetz, Ralf...

  7. #7
    Avatar von Albu
    Albu ist offline Foren-Gott
    registriert
    04-07-2001
    Beiträge
    13.501

    AW: Skriptaufgabe splitten

    Gibts auf dem Server keine Cron-Jobs?
    1. Get people to play Space Taxi
    2. Sell real estates on neptun
    3. Profit!

    IE is not a browser, it is a scream.


    Outside of a dog, a book is man's best friend. Inside of a dog, it's too dark to read.

  8. #8
    daWonderer ist offline Routinier
    registriert
    21-04-2007
    Beiträge
    409

    AW: Skriptaufgabe splitten

    Zitat Zitat von Albu Beitrag anzeigen
    Gibts auf dem Server keine Cron-Jobs?
    Die gibt es. Gilt für diese keine Beschränkung in Zeit/Speicher?
    Geändert von daWonderer (03-12-2007 um 00:30 Uhr)
    greetz, Ralf...

  9. #9
    Avatar von Albu
    Albu ist offline Foren-Gott
    registriert
    04-07-2001
    Beiträge
    13.501

    AW: Skriptaufgabe splitten

    Zitat Zitat von daWonderer Beitrag anzeigen
    Die gibt es. Gilt für diese keine Beschränkung in Zeit/Speicher?
    schwer zu sagen - was steht denn in der Doku / Vertrag?

    Prinzipiell sind Cron-Jobs für solche Sachen wie Backups besser geeignet, denn die passieren immer zum vorgegebenen Zeitpunkt und der Benutzer muss nicht eingreifen.
    Der Cron-Job ruft dazu ein id.R. ein Shellskript auf, welches die Operationen direkter ausführt (d.h. ohne Browser, HTTP, Webserver oder PHP).
    Je nachdem, wie komplex die Anforderungen sind, kann ein Shellskript aus einem einfachen Aufruf bestehen, oder sich zu einer Sammlung von umfangreichen Operationen ausweiten. Natürlich mit einer eigenen Syntax. Außerdem gibt es mehrere mögliche Sprachen für die Shellprogrammierung: von sh über bash zu perl, python, ruby oder auch PHP.
    Was der Server kann und was nicht, sollte in der Doku / Vertrag auftauchen.
    1. Get people to play Space Taxi
    2. Sell real estates on neptun
    3. Profit!

    IE is not a browser, it is a scream.


    Outside of a dog, a book is man's best friend. Inside of a dog, it's too dark to read.

  10. #10
    daWonderer ist offline Routinier
    registriert
    21-04-2007
    Beiträge
    409

    AW: Skriptaufgabe splitten

    Zitat Zitat von daWonderer Beitrag anzeigen
    2. Wie kann ich die Aufgabe des Skriptes splitten, aber gleichzeitig dennoch eine Fortschrittanzeige mit echo ermöglichen?

    Mir fällt im Moment nur die Verwendung von location(...) ein für das Splitten, aber da kann ich echo nicht verwenden.
    Ich meinte natürlich header('Location: ...') .

    Hat jmd.einen Lösungsansatz für das Splitten der Skriptaufgabe, mit der Möglichkeit Text während der Bearbeitung auszugeben?

    Zitat Zitat von Albu
    Prinzipiell sind Cron-Jobs für solche Sachen wie Backups besser geeignet, denn die passieren immer zum vorgegebenen Zeitpunkt und der Benutzer muss nicht eingreifen.
    Richtig. Nur haben einige Domain-Besitzer keinen Shell-Zugriff, um Cronjobs direkt auf dem Server zu erstellen.
    greetz, Ralf...

  11. #11
    Avatar von Albu
    Albu ist offline Foren-Gott
    registriert
    04-07-2001
    Beiträge
    13.501

    AW: Skriptaufgabe splitten

    Zitat Zitat von daWonderer Beitrag anzeigen
    Richtig. Nur haben einige Domain-Besitzer keinen Shell-Zugriff, um Cronjobs direkt auf dem Server zu erstellen.
    Das ist mir schon klar, aber aus Deiner Antwort schloß ich - offensichtlich fälschlicherweise, dass diese Einschränkung hier nicht zutrifft.
    1. Get people to play Space Taxi
    2. Sell real estates on neptun
    3. Profit!

    IE is not a browser, it is a scream.


    Outside of a dog, a book is man's best friend. Inside of a dog, it's too dark to read.

  12. #12
    daWonderer ist offline Routinier
    registriert
    21-04-2007
    Beiträge
    409

    AW: Skriptaufgabe splitten

    Zitat Zitat von Albu Beitrag anzeigen
    Das ist mir schon klar, aber aus Deiner Antwort schloß ich - offensichtlich fälschlicherweise, dass diese Einschränkung hier nicht zutrifft.
    Deine Schlussfolgerung war schon richtig. Danke für die Info's, ich werde mich bei Gelegenheit über die Shellprogrammierung informieren.
    Bei meiner Domain wird mir dieses Shellskript dann aber nichts nützen. Wiederverwendbarkeit wäre schon vorteilhaft.
    greetz, Ralf...

Ähnliche Themen

  1. Seiten in PDF-File splitten?
    Von jeko im Forum Tools und Programme
    Antworten: 2
    Letzter Beitrag: 13-08-2007, 11:16
  2. <input type="hidden" name="lang" value=???
    Von mitti im Forum JavaScript
    Antworten: 13
    Letzter Beitrag: 10-05-2006, 12:41
  3. Datei splitten
    Von style-guide! im Forum Linux und Co
    Antworten: 2
    Letzter Beitrag: 19-04-2006, 22:59
  4. splitten
    Von Klark im Forum Serverseitige Programmierung
    Antworten: 3
    Letzter Beitrag: 19-05-2001, 18:04
  5. Text splitten (aber kompliziert da immer variabel)
    Von AF2k im Forum Serverseitige Programmierung
    Antworten: 8
    Letzter Beitrag: 27-04-2001, 14:51

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •