Ergebnis 1 bis 7 von 7

Thema: PHP Wartezeit im Backend, Lade GIF darstellen?

  1. #1
    Contao-Nutzer Avatar von rory_ch
    Registriert seit
    11.05.2016.
    Ort
    Schweiz
    Beiträge
    119

    Frage PHP Wartezeit im Backend, Lade GIF darstellen?

    Hallo zusammen

    Stellt euch ein Skript vor, jenes beim Aufruf einer Backend-Seite folgendes macht:

    <?php
    echo "Start";
    sleep(5);
    echo "Teil 1 geschafft";
    sleep(5);
    echo "Teil 2 geschafft";
    sleep(5);
    echo "Teil 3 geschafft";

    Nun ist das Verhalten wie folgt, es geht 15 Sekunden bis ich überhaupt etwas sehe.
    In einer normalen Seite kann ich z.B. mit ob_flush(); oder flush(); die Ausgabe vor dem sleep erzwingen.
    So wird das Verhalten wie beim Contao Live Update.
    In Contao kann ich das aber nicht mit dem flush machen, da der Header bereits geschickt wurde.
    Wie kann ich das bewerkstelligen (evtl. gleich anhand des Beispiels oben)?

    Danke vielmals
    Geändert von rory_ch (20.01.2017 um 15:01 Uhr)

  2. #2
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Hi,

    wird dieses "Script" bei jedem Seitenaufruf im Backend ausgeführt oder nur einmalig?
    Warum muss das Script direkt in den Prozess des Backends integriert sein?

    Dafür eigent sich doch hervorragend Ajax! Oder darf während dieses Scripts nichts anderes passieren?
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  3. #3
    Contao-Nutzer Avatar von rory_ch
    Registriert seit
    11.05.2016.
    Ort
    Schweiz
    Beiträge
    119

    Beitrag

    Danke fürs Feedback

    Grundsätzlich hast du recht, Ajax wäre hier prädestiniert.
    Es handelt sich aber um eine relativ komplexe PHP Struktur, mit 6 Klassen und X Methoden.
    Um nun zwischendurch Resultate zurück ans Frontend zu geben, müssten das ja einzelne Ajax Aufrufe sein, heisst die Logik müsste entsprechend auch ins Frontend verschoben werden...
    Evtl. wäre es auch anders möglich, da kenne ich mich wohl zu wenig aus, daher wollte ich es im Backend lösen.

    Wie wurde das im LiveUpdate gelöst?
    Gibt es keine Alternative?

  4. #4
    Contao-Fan Avatar von PaddySD
    Registriert seit
    26.10.2016.
    Ort
    Andechs
    Beiträge
    656

    Standard

    Schau Dir doch mal die Erweiterung "easyUpdate" von BugBuster (glaube ich) an, das dürfte Deine Idee woohl am ehesten treffen.

    Dort wird auch Schritt für Schritt weiter gegangen im Script, ob und inwieweit da jetzt Deine Wartezeit dazu muss oder nciht, müsstest Du dann selbst einbauen.

    Aber mal so als Start, um eine mehr-Schritt-Sache im BE zu sehen...

  5. #5
    Contao-Nutzer Avatar von rory_ch
    Registriert seit
    11.05.2016.
    Ort
    Schweiz
    Beiträge
    119

    Daumen hoch

    Thx, schaue ich mir mal an.
    Falls ich etwas dazu finde, werde ich es hier gerne teilen.

  6. #6
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Hi,

    ich hab keine Ahnung wie man dir helfen soll, wenn du nicht wirklich sagst, was du eigentlich machen möchtest. Unabhängig von Frontend oder Backend geht es hier doch wohl in erster Linie um Datenverarbeitung.
    Welche Daten müssen WANN verarbeitet werden? Kann dies automatisch passieren oder muss das jemand manuell auslösen (um dann im Backend spezielle Informationen zu erhalten)?

    Geh doch mal in bisschen ins Detail, dann wird es auch wesentlich einfacher hier eine Hilfestellung zu geben.
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  7. #7
    Contao-Nutzer Avatar von rory_ch
    Registriert seit
    11.05.2016.
    Ort
    Schweiz
    Beiträge
    119

    Beitrag

    Wir bauen intern eine Entwicklungsumgebung basierend auf einem Eigenen Modul innerhalb des Contao Backends.
    Dieses richtet automatisiert Ordner, vHost, DNS, MySQL, Repository etc. auf unserem Webserver ein.
    Zurzeit läuft technisch alles einwandfrei, nur der Bezug des Repos dauert halt seine Zeit und daher entsteht eine Wartezeit.
    Nun würde ich gerne einen Zwischenstand ausgeben, vor dem Repo Download, damit man weiss, es läuft was.

    Werde aber sicherlich mal die Erweiterung von BugBuster anschauen.
    Alternativ, kann man echt eine LadeGIF darstellen? Hat da jemand Erfahrungen im BE?

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

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