während laufzeit eines Skripts Anzeige ändern

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • während laufzeit eines Skripts Anzeige ändern

    Hallo,

    ich möchte folgendes realisieren:
    Über ein PHP-Skript werden Newsletter verschickt, ich würde aber gerne ohne Neuladen der Seite während die Newsletter verschickt werden anzeigen, wie viele von wie vielen schon verschickt wurden und evtl. auch noch die eMailadressen der Nutzer.
    Da in dem Newsletter Platzhalter für Vorname und Name vorkommen, wird pro Newsletter einmal die mail()-Funktion aufgerufen, alles in einer while-Schleife, die aus der Datenbank liest.

    Wie könnte man - falls es überhaupt irgendwie mit Tricks funktioniert - das umsetzen? In PHP wohl garnicht, aber evtl. in DHTML oder JS?? Da kenne ich mich zu wenig aus, um beurteilen zu können, was da möglich wäre.

    Bin für jede weiterführende Hilfe dankbar.

    MfG,
    Fuchsi

  • #2
    In PHP wohl garnicht
    und warum postest du dann in PHP?

    *VERSCHIEB*



    und auch mit JS only wird es nciht gehen. woher soll denn dein JS wissen, was auf dem server passiert?
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Original geschrieben von Abraxax
      und auch mit JS only wird es nciht gehen. woher soll denn dein JS wissen, was auf dem server passiert? [/B]
      von php in der schleife...
      <script> bla bla </script>

      bin jetzt schon etwas weiter, momentan funktioniert im IE die Ausgabe in einem <input>, allerdings läuft das gechached ab, also nicht während der schleifendurchlaufs, sondern bei 100 Mails z.B. nach 36, 84 und 100.

      Kommentar


      • #4
        Du kannst dir vielleicht mal die coppermine-bildergallerie runterladen, die macht sowas nämlich.

        Wenn du dort Bilder erst per FTP in einen Ordner lädst und dann den ganzen Ordner in ein Album reinpackst, werden von allen Bildern nacheinander Thumbs erstellt und die Bilder zurechtgeschnitten .. das dauert natürlich ein bisschen .. und da wird nach und nach in einer Tabelle zu jedem Bildtitel ein OK-Bildchen angezeigt.
        Welchen kleinen Trick sie da anwenden weiss ich nicht (hab mir das nie angeschaut). Und das erscheinen der Bildchen scheint zeitlich auch nicht wirklich hinzuhauen .. aber der User hat wenigstens die Illusion und einen ungefähren Eindruck wie lange es noch dauert.
        [color=red]Geht nicht[/color] ist keine Fehlermeldung

        Kommentar


        • #5
          Original geschrieben von fuchsi
          von php in der schleife...
          <script> bla bla </script>
          sodass quasi serverseitig der code geschrieben wird, wie die mails geschickt werden.

          und wenn alles mails zuende verschickt wurden, sendet der server die fertige html seite an den client. und dann gibt das JS das nur aus?

          dann kannst du direkt und einfach auch nur 'ist jetzt fertig' schreiben. das läuft nämlich auf's selbe hinaus ....
          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


          Kommentar


          • #6
            Original geschrieben von Big Chief
            Du kannst dir vielleicht mal die coppermine-bildergallerie runterladen, die macht sowas nämlich.
            Oh, muss ich mir mal anschauen, danke für den Tip.

            Kommentar


            • #7
              check mal:
              PHP-Code:
              <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                    "http://www.w3.org/TR/html4/loose.dtd">
              <html>
              <head>
                  <title></title>
              </head>
              <body>
              <?php
              for($i=1$i<11$i++)
              {
                  
              // nur zum bremsen des scriptes
                  
              for($k=0$k<1000000$k++)
                      
              $x 1*1;
                      
                  echo 
              $i.'. mal<br>';
                  
              flush();          // laut UCN im man unter flush sollte
                  
              ob_flush();       // bei php4.3 beides auftauchen
              }
              ?>
              </body>
              </html>
              statt der 2. for-schleife sendest du die mail, bei mir gehts (php4.3.2)

              je nachdem wieviel mails du sendest, kommst du um ein mehrfaches neuladen der seite nicht herum, da du sonst ein timeout erhältst ... aber das ist mit js ja kein problem.
              Zuletzt geändert von Wurzel; 06.08.2004, 18:20.
              Kissolino.com

              Kommentar


              • #8
                Also ich hab das jetzt mit einer fertigen PHP-Klasse gemacht, die ein JS steuert. Nennt sich ProgressClass und kann man hier finden.

                Kommentar

                Lädt...
                X