| PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Post your PHP questions here! |
 |
|

23-10-2002, 22:57
|
 |
Berni
  OWNER
|
|
Registriert seit: Jan 2001
Ort: Frankfurt / Egelsbach
Beiträge: 6.204
|
|
flush()?
Hi,
ich möchte mir ein Select * from bal zeilenweise ausgeben lassen
Leider wartet der Browser bis eine bestimmte Datenmenge zusammen gekommen ist, bevor die Daten gerendert werden.
Wie kann ich mit flush() (?) den Ausgabebuffer früher ausgeben,
also bereits das erste Zeichen anzeigen lassen?
Gruß
berni
|

23-10-2002, 23:13
|
TBT
 Moderator
|
|
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.776
|
|
geht nur, wenn der Webserver es mitmacht.
Der Windows Apche macht es glaube ich nicht
|

23-10-2002, 23:16
|
 |
Berni
  OWNER
|
|
Registriert seit: Jan 2001
Ort: Frankfurt / Egelsbach
Beiträge: 6.204
|
|
ich hab Linux laufen, gibt es dafür eine Einstellung in der .conf?
|

23-10-2002, 23:22
|
TBT
 Moderator
|
|
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.776
|
|
schau mal bei apache.org, ich denke ich hatte dort as drüber gelesen
|

23-10-2002, 23:24
|
 |
Berni
  OWNER
|
|
Registriert seit: Jan 2001
Ort: Frankfurt / Egelsbach
Beiträge: 6.204
|
|
ok thanks,
gleich mal schauen...
|

23-10-2002, 23:28
|
|
Campus
PHP Junior
|
|
Registriert seit: Jul 2002
Ort: D
Beiträge: 842
|
|
hmm,
ich glaub dann muss man erstmal an die 300 zeichen senden.
PHP-Code:
echo str_repeat(300, " ") . "\n";
|

23-10-2002, 23:32
|
 |
Berni
  OWNER
|
|
Registriert seit: Jan 2001
Ort: Frankfurt / Egelsbach
Beiträge: 6.204
|
|
hab ich bereits gemacht.
Wenn dann 256 bytes gesendet wurden wartet der browser wieder bis eine bestimmte Anzahl bytes vorliegen
thanks
berni
|

24-10-2002, 13:19
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.173
|
|
Ich hab flush() bei meinem Newsletter Versand. Wenn ich testweise verfolgen will, wie er versendet. Und da mail() ja nicht immer das schnellste ist, habe ich mir gedacht, wenn ich mir ein echo + flush() nach jedem mail() einbaue versendet zeigt er mir in realtime an, was er macht. Und siehe da, es klappt.
Das ganze ist ja nichts anderes als ein Auflisten der Empfängerdatensätze (halt nur mit zusätzlicher "Verzögerung" in Form von mail())
Also in der While schleife machst du nach dem Echo nur flush() und das sollte es eigentlich sein.
|

24-10-2002, 13:21
|
 |
Berni
  OWNER
|
|
Registriert seit: Jan 2001
Ort: Frankfurt / Egelsbach
Beiträge: 6.204
|
|
das mache ich auch, leider zeigt er mir nicht jede zeile an
|

24-10-2002, 13:26
|
|
delpino
Newbie
|
|
Registriert seit: Oct 2002
Ort: London
Beiträge: 28
|
|
noch einfacher ists mit ob_implicit_flush() dann braucht man nicht jedesmal flushen ist quasi automatisch, einfach an den anfang des scripts setzten, falls das nicht hilf versuche es mit einer anderen extension z.B. phpx und tue folgendes in .htaccess:
AddType application/x-httpd-php phpx
ausserdem kannst du nicht ob_start ("ob_gzhandler"); verwenden..
|

24-10-2002, 13:26
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.173
|
|
In der phpInfo steht glaube ich auch nichts darüber drin, oder?
Ich denke eigentlich, wenns bei solchen Funktionen irgendwelche Einschränkunegn gibt, steht das als Anmerkung im Manual.
Hmm, no idea
|

24-10-2002, 13:29
|
 |
Berni
  OWNER
|
|
Registriert seit: Jan 2001
Ort: Frankfurt / Egelsbach
Beiträge: 6.204
|
|
delpino,
gleich mal versuchen....
|

24-10-2002, 14:12
|
|
delpino
Newbie
|
|
Registriert seit: Oct 2002
Ort: London
Beiträge: 28
|
|
und gehts?
|

25-10-2002, 02:39
|
 |
Berni
  OWNER
|
|
Registriert seit: Jan 2001
Ort: Frankfurt / Egelsbach
Beiträge: 6.204
|
|
leider auch nicht
|

30-09-2003, 11:50
|
|
swimming
Registrierter Benutzer
|
|
Registriert seit: Mar 2003
Beiträge: 73
|
|
@TobiaZ: Genau das habe ich auch vor. Bei mir sieht das ganze in der while-Schleife so aus:
PHP-Code:
mail($to, $subject, $message, $header);
echo "Newsletter versendet an: ".$to;
flush();
Und trotzdem kommt keinerlei Ausgabe auf dem Bildschirm. Ich habe auch schon einmal probiert, mir aus Spaß 500 Newsletter zu senden, um zu sehen, ob er eine Ausgabe produziert. Fehlgeschlagen.
Könnt ihr mir sagen, wo der Fehler ist.
Tschüssi Steffen
|
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
|
| Themen-Optionen |
|
|
| Thema bewerten |
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
|
PHP News
|