sleep();?
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
antwort
ausgeben
befehl
benutzt http
beschreibung
buffer
code
datum
hintergrund
http
klappen
laden
machen
manual
nutz
schleife
sekunde
text
warten
wissen
-
Gibt es etwas, dass so ähnlich wie sleep(); funktioniert aber nicht beide Skripts gleichzeitig ausgibt? Z. B. soll die Ausgabe so aussehen:
Hallo 2 Sekunden später Dustin.
Mit sleep(); führt er beides aus und gibt es mir dann gleichzeitig aus. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
wie du siehst kennst du die antwort schon xD
bzw. wie meinste das mit beide skripts gleichzeitig ausführen?^^
Beitrag geändert: 2.10.2008 12:48:39 von myhead -
Schonmal Google benutzt? ;)
http://de.php.net/manual/de/function.sleep.php
Ja, aber das suche ich doch gar nicht!?
wie du siehst kennst du die antwort schon xD
Nein!? :o
Er soll mir als Text z. B. "Hallo " ausgeben und 2 Sekunden später soll er mir "Dustin." ausgeben. Mit sleep(); ist das nicht möglich.
Beitrag geändert: 2.10.2008 12:49:52 von dustin93 -
...wie meinste das mit dem gleichzeitig ausführen? ...hasst du 2 skripts..oder wie?^^ ..
//EDIT: ACHSOO...jetz versteh ich^^
Beitrag geändert: 2.10.2008 12:51:10 von myhead -
Bei sleep(); ist das so, dass er es so macht.
Im Hintergrund bereitet er sogesagt alles vor "Hallo ", wartet 2 Sekunden, "Dustin." und dann gibt er mit die 2 Texte gleichzeitig aus. Was ich will ist, dass er "Hallo " ausgibt, dann 2 Sekunden wartet und dann "Dustin." ausgibt. -
das kann man auf jeden fall mit javaScript machen...ansonsten könnte ich dir eine SChleife ans herz legen...
nur dann hasste je nach internetleitung immmer unter schiedliche zeiten...
<?php echo "Hallo! <br />"; $i = 0; while($i < 100) { $i++; } echo "<br />...NameOderSo..."; ?>
Beitrag geändert: 2.10.2008 12:57:53 von myhead -
Bei sleep(); ist das so, dass er es so macht.
Im Hintergrund bereitet er sogesagt alles vor "Hallo ", wartet 2 Sekunden, "Dustin." und dann gibt er mit die 2 Texte gleichzeitig aus. Was ich will ist, dass er "Hallo " ausgibt, dann 2 Sekunden wartet und dann "Dustin." ausgibt.
Dann hast du den Sinn von PHP nicht verstanden. Das macht man wenn dann überhaupt per Clientseitigen Methoden, denn: Ein HTTP-Request, EINe Antwort. Diese kann dann hölchsten Javascript-Code in der form von
document.write("Hallo"); window.setTimeout("document.write('Dustin.')", 2000)
sein, was dann das gewünschte erreicht.
Aber bei PHP wird das Skript vorbereitet und als eine Antwort versendet, da geht sowas nicht.
Wenn du zwei Skripts hintereinander transparent ausführen willst, musst du Ajax benutzen und eine Seite laden, dann von dieser Seite per Ajax das zweite Skript aufrufen. -
Geht das denn nicht:
<?php // Hallo echo "Hallo "; // 2 Sekunden warten... sleep(2); // Dustin! echo "Dustin!"; ?>
?
Och, ne geht nicht... friert einfach das script kurz ein...
Ne, das geht nur mit JS (JavaScript) Php ist ja ne Serverseitige Sprache, dafür ist das net...
€dit:
Zu langsam...
Beitrag geändert: 2.10.2008 13:01:06 von olearose -
äh und wie schaff ich das das es sich nicht überblendet??
also das es sich hintereinander schreibt??
und das er mit beeindigung der letzten ausgabe aufhört zu laden??
mfg andré
Beitrag geändert: 2.10.2008 13:15:07 von andre-morillon -
Na ja, hab ich mir schon gedacht, dass das mit PHP nicht möglich ist. Trotzdem vielen Dank!
-
Das hier sollte klappen:
<script type="text/javascript"> var meinText = "Hallo Dustin!"; meinText = meinText.split(' '); var curr = 0; var meinTimeout = false; function textIntervall() { if(meinTimeout)window.clearTimeout(meinTimeout); if(curr < meinText.length) { document.getElementById('meineTextAnzeige').innerHTML += ' ' + meinText[curr]; meinTimeout = window.setTimeout('textIntervall()', 2000); curr++; } } window.onload = textIntervall; </script> <body > <div id="meineTextAnzeige"></div> </body>
-
Probiere es mal damit:
echo 'hallo<br/>'; flush(); sleep(2); echo 'Dustin';
Und schau dich hier mal um: http://de.php.net/flush()
Beitrag geändert: 2.10.2008 14:02:45 von webwalker -
Beschreibung:
flush(); Leert den Puffer des Servers und sendet die auszugebenen Daten dem User sofort zu anstatt zu warten bis die komplette Seite fertig erstellt ist. Ermöglicht somit ein schnelleres Anzeigen der Inhalte auf dem Bildschirm.
Achtung: Der Befehl flush(); funktioniert nur, wenn PHP direkten Zugriff auf den Buffer des Servers hat. Dies ist nicht der Fall, wenn PHP als CGI-Version (also auch unter Windows) installiert ist. Bei Apache mit PHP-Modul hingegen funktioniert es.
Sollte also hier bei Lima-City nicht klappen...
Beitrag geändert: 2.10.2008 14:10:22 von dammasch -
Sollte also hier bei Lima-City nicht klappen...
Da ich den Webspace nicht nutze kann ich das nicht nachvollziehen
Dennoch schadet es nicht zu Wissen das es so funktionieren würde -
Ich hab es bereits anders gelöst... :P
-
Wie denn wenn man fragen darf? :P
-
Ich hab JavaScript mit PHP kombiniert.
Beitrag geändert: 2.10.2008 14:13:31 von dustin93 -
wenn ihr wissen wollt was man aus dammasch's script (lustiges) machen kann
http://andre-morillon.de/404.php
text ideen (anregungen und erweiterungen) werden gerne angenommen.
mfg andré -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage