Avatar billede kwudo Nybegynder
08. oktober 2006 - 20:13 Der er 7 kommentarer og
1 løsning

Tekst chat..

Hej alle sammen :-)

Jeg er ved at lave en tekst chat i php og javascript sammen med en ven.
Vi står og mangler noget, der kan opdatere vores "Chat vindue" 24/7, hele tiden, uden det blinker.
Jeg kender godt en html meta der opdatere med nogle sekunders interval, men syntes det er distraherende den blinker.

Håber i kan hjælpe.
Avatar billede Slettet bruger
08. oktober 2006 - 21:19 #1
Kun testet i IE of FF.. Bare spørg løs hvis noget skal uddybes.

chat.htm:
<html>
    <head>
        <script type='text/javascript'>
            function run_motor(){
                frames['motor'].location.href='motor.htm';
                setTimeout('run_motor()',2000);
            }
        </script>
    </head>
    <body onload='run_motor();'>
        <iframe name='motor' src='motor.htm' style='display: none;'></iframe>
        <div id='chat'></div>
    </body>
</html>

motor.htm:
<html>
    <head>
        <script type='text/javascript'>
            function update_chat(){
                parent.document.getElementById('chat').innerHTML = "test";
            }
        </script>
    </head>
    <body onload='update_chat();'>
    </body>
</html>

/1
Avatar billede kwudo Nybegynder
08. oktober 2006 - 21:30 #2
Altså alt fra chat.htm skal bare indsættes i min php fil, selvfølgelige efter orden.

Og motor i en ny fil?
Avatar billede Slettet bruger
09. oktober 2006 - 08:47 #3
Motor en den fil, hvor du henter data ind. Den bliver kørt i en skjult iframe.

motor.php:
<html>
    <head>
        <script type='text/javascript'>
            function update_chat(){
                parent.document.getElementById('chat').innerHTML = "<?php echo output til chatten"; ?>";
            }
        </script>
    </head>
    <body onload='update_chat();'>
    </body>
</html>

Og chatten er den side, du viser chatten. Du skal naturligvis rette referencen "motor.htm" til "motor.php".. Ideen bag denne løsning er:

function run_motor(){
    // Kalder 'motor.php' i iframen 'motor'
    frames['motor'].location.href='motor.php';
    // venter 2000 millisekunder før denne funktion køres igen
    setTimeout('run_motor()',2000);
}

function update_chat(){
    // opdaterer det element med id='chat' i parent window.
    parent.document.getElementById('chat').innerHTML = "<?php echo output til chatten"; ?>";
}
Avatar billede olebole Juniormester
09. oktober 2006 - 14:00 #4
<ole>

Prøv at søge på Google om tutorials vedrørende Ajax - men undgå w3schools.com, hvis tutorial stort set ikke har en kæft med Ajax at gøre.

Prøv at kikke her:
    http://developer.mozilla.org/en/docs/AJAX

- eller en artikel af ham, der navngav teknikken:
    http://adaptivepath.com/publications/essays/archives/000385.php

Frem for alt: Undgå HTML-formatering på serveren .... foretag den på klienten  ;o)

/mvh
</bole>
Avatar billede kwudo Nybegynder
22. september 2007 - 21:06 #5
olebole smid svar :)
Avatar billede olebole Juniormester
22. september 2007 - 21:53 #6
- kastet  ;o)
Avatar billede kwudo Nybegynder
22. september 2007 - 21:59 #7
super :)
Avatar billede olebole Juniormester
23. september 2007 - 00:18 #8
- takker for points  ;o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester