Malte: Ladebalken mit ÜHP

Hi,

ich würde mit PHP gerne einen grafischen Ladebalken machen.
Geht es damit oder muss ich Javascript nehmen?

Wäre auch gut wenn mir jemand sagen könnte wie ich das dann machen muss...

Malte

  1. Moin!

    ich würde mit PHP gerne einen grafischen Ladebalken machen.

    Was soll der denn für einen Fortschritt anzeigen?

    Geht es damit oder muss ich Javascript nehmen?

    Hängt davon ab, aber in aller Regel zeigen solche Balken nichts sinnvolles an.

    - Sven Rautenberg

    1. Hi,

      Was soll der denn für einen Fortschritt anzeigen?

      Na zum Beispiel, wieviel von der Seite schon geladen ist. ;-)
      Ich hatte häufiger das Problem, dass sich meine geliebten Anwender beschwert haben, dass "die Seite nicht lädt" (IE zeigt Tabellen erst an, wenn sie fertig geladen sind), allerdings hatten sie auch "1.000 Datensätze auf einmal anzeigen" eingegeben. Der dezente Fortschrittsbalken unten in der Statusleiste hat sie nicht davon überzeugen können, dass dort noch etwas kommt.
      Ein 555x35 großer JavaScript-enhancter Fortschrittsbalken mit integrierter Prozentanzeige hat den gewünschten Effekt erbracht. Nach jedem x-ten Datensatz (so, dass es ca. 2%-Schritte sind) wird ein kleines JavaScript geschrieben, dass zur Fortschrittsanzeige 2% hinzu fügt. Funktioniert wunderbar.

      Der Yeti

      --
      Habe nun, ach! WInfo, BWL, und Mathe, Und leider auch Info!
      Durchaus studiert, mit heißem Bemühn. Da steh' ich nun, ich armer Thor!
      Und bin so klug als wie zuvor!
      sh:( fo:| ch:? rl:? br:< n4:& ie:( mo:| va:| de:[ zu:) fl:| ss:) ls:< js:|
  2. Moin,

    Geht es damit oder muss ich Javascript nehmen?

    Eine Mischung aus beidem ist die Antwort. Eignen würde sich XMLHttpRequest http://en.wikipedia.org/wiki/XMLHttpRequest dafür.
    Du kannst Dir auch das Bsp. http://www.ilmiantajat.net/testing/zuni/phpmailer/progressbar.php ansehen und ruterladen.

    SteBu

  3. echo $begrüßung;

    ich würde mit PHP gerne einen grafischen Ladebalken machen.
    Geht es damit oder muss ich Javascript nehmen?

    Nicht sehr komfortabel aber man kann da schon was nur mit PHP _versuchen_.
    Normalerweise ist PHP schon mit seiner Arbeit fertig, wenn der Client das Ergebnis erhält. Man kann jedoch mit flush() veranlassen, dass der Webserver schon das bisherige Teilergebnis zum Client sendet. Das geht aber nicht unbedingt mit allen Servern. Und auch den Client kann man nicht zwingen sofort loszurendern. Eingebaut in einen Container, der erst gerendert werden kann, wenn er vollständig bekannt ist, wird das mit einer Fortschrittsanzeige zum Beispiel nichts.

    Einen "laufenden Balken" könnte man beispielsweise mit zusammengestückelten Grafiken simuliert werden.

    Die Webseite ist während "der Balken läuft" noch nicht vollständig beim Client. Ein komplexes Layout wird sich in der Zeit sicherlich nicht realisieren lassen.

    echo "$verabschiedung $name";