Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP] Chat flackern (https://www.delphipraxis.net/67700-%5Bphp%5D-chat-flackern.html)

mr47 18. Apr 2006 18:34


[PHP] Chat flackern
 
Hi!

Ich hab einen kleinen Chat für meine Homepage geschrieben! Ich stelle den Log, also das was bereits geschrieben wurde, in einer Div-Box dar! Allerdings flackert (verschwindet) diese immer kurz, wenn neu geladen wird! Kann ich das irgendwie beheben? Finde das ist ein kleiner Schönheitsfehler!


Gruß und Danke mr47 :-)

S2B 18. Apr 2006 18:41

Re: [PHP] Chat flackern
 
Wie realisierst du denn den Refresh? Mit einem Meta-Tag oder mit JavaScript?

mr47 18. Apr 2006 18:45

Re: [PHP] Chat flackern
 
Meta-Tag. Ich kann kein JS :-( :wink:

Aenogym 18. Apr 2006 19:07

Re: [PHP] Chat flackern
 
das kurze verschiwnden wird durch den reload kommen. die zeit, die der browser zum download braucht, wird die seite schließlich nicht ganz angezeigt.

ich würde dir empfehlen, dich ein wenig in JS einzuarbeiten (ist nicht sonderlich schwer - eine super referenz gibts bei SelfHTML) und dich über "Ajax" zu belesen. damit kannst du deine seite einmal laden und dann asynchron per JS neue informationen abrufen, ohne wirklich die seite zu wechseln.

aeno

edi-design 18. Apr 2006 19:20

Re: [PHP] Chat flackern
 
wenn dus direkt nur mit php amchen willst, schau dir mal die

flush()-Funktion

an, http://www.php.net/manual/de/function.flush.php

mit der funktion, kannst du zwischneausgaben deines Scripts erzeugen, heißt er sendet schon Daten an den Browser, obwohl das Scirpt noch nciht komplett geparst ist.

Also machst du einfach ne Schleife, welche auf dauer läuft und die log ausliest, und halt immer ne neue Zeile an den Brwoser sendet.
Musste ein wengie experimentieren und hoffen dass dein Provider Flush aktiviert hat, sonst funzts nich.

aber auchtung ist nich die feinste art, das ziemlich Ressourcen frist, eine Endlos-Schleife ;)
Also vielleicht, so alle 2-3Min nen Meta-Refresh oder JS.

mfg andré

mr47 18. Apr 2006 21:41

Re: [PHP] Chat flackern
 
Also gut! Ich bin gern bereit was neues zu lernen! Also ich will's schon mit JS versuchen! Ich hab die Dokumentation von SelfHTML gefunden! JS sieht ja recht simpel aus... Aber ich sitz jetzt hier und weiß garnicht mit was ich anfangen soll! Kann mir mal jemand sagen was ich mit JavaScript machen muss (also theoretisch, was muss ich mit JS realisieren) und vllt. noch einen klitzekleinen Tipp geben, was ich mir mal genauer anschauen soll ;-)

Und noch ne frage zu Ajax: Ist das ein fertiges System, das einsatzbereit ist, oder nur ein Konzept, das ich selbst umsetzen muss?


Vielen Dank!

Gruß mr47 :hi:

mr47 19. Apr 2006 20:35

Re: [PHP] Chat flackern
 
Hi!

Ich hab jetzt einen Code, der immer wieder (im Sekundentakt) ausgeführt wird. Und ich weiß auch wie ich Text in der <div>-Box hinzufügen kann:

Code:
<html>
<head>
<script type="text/javascript">
  function reread()
  {
    d=document.getElementById('chatlog');
    // Erst prüfen ob neue Meldungen da sind

   
    // Dann einfügen
  }

  setInterval('reread()',1000);
</script>
</head>


<body onLoad="reread()">
<?php
echo '<div id="chatlog">Chatlog, Since '.strftime('%d.%m %H:%M',time()).'</div>';




?>
</body>
</html>
Aber wie rufe ich jetzt ein PHP-Script auf? Ich will ein extra PHP-Script schreiben, dass prüft ob eine Neue Meldung in der MySql-Datenbank ist und ein Script, dass die neue(n) Meldungen so ausgibt, dass ich sie mit JS anhängen kann... Kann mir jemand sagen wie ich das machen soll?


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:02 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz