Auto refresh div AJAX

Tags:    javascript

<< < 12 > >>
Kære udvikleren.

Jeg er igang med at lave en chat, og der er jeg ved at lave sådan at den div hvor alle beskeder kommer frem, der skal den opdatere i omkring hvert sekund, eller hvert 5' sekund. Jeg har en ajax kode, og den kan godt have noget indhold, men når den skal opdatere kommer der ikke noget indhold frem.

Fold kodeboks ind/udKode 


Håber meget på at i kan hjælpe mig!



i chatlog.php smider du bare en html refresher ind..

print '<meta http-equiv="refresh" content="5" />';

Jeg kan nemlig ikke lige overskue dit ajax lige pt... :D (For meget stress. :P )



Arh det er så ikke helt det samme, Danni :P

Daniele, har du prøvet at bruge et JS framework i stedet, fx jQuery? Det gør det altså utroligt let, og ikke mindst cross-browser kompatibelt, at rode med fx AJAX kald :)

Mvh.

Kasper (TSW)



#Kasper
Hmm, jeg har ikke så meget forstand på JS framework, har faktisk aldrig arbejdet med det. Jeg programmere i PHP, CSS, HTML og en lille smugle jQuery/JavaScript. Derfor kan jeg ikke bare kaste mig ud i noget JS Framework, derfor ville jeg blive meget glad for et lille fif, som kunne hjælpe mig på vej.

F.eks. ville jeg gerne lærer lidt jQuery, og så prøvede jeg på denne her kode :)

Men hvis du kunne hjælpe mig lidt med JS Framework ville jeg gerne prøve det. Det er bare irriterende at koden ikke virker, når jeg ellers syntes at den så ud til at virke. Personligt tror jeg at det der er galt er denne kode i den overstående kode:

Fold kodeboks ind/udKode 


For det ligner at den ville sende "null/ingenting" :), men det er garanteret bare mig der er gal på den :D



jQuery er netop et JS framework, som jeg også nævner, og imo et af de klart bedste :). Jeg har ikke testet det, men al din kode burde kunne erstattets med noget ala det her, hvis du bruger jQuery (husk at inkludere jQuery på din side):

Fold kodeboks ind/udJScript kode 


Du skal så lige tilpasse stien i .get kaldet så den passer, og derudover ville jeg nok bruge POST i stedet for GET, men så skal du lige tilpasse hvad du kigger efter i din chatlog.php fil.

Mvh.

Kasper (TSW)



Indlæg senest redigeret d. 05.02.2011 10:17 af Bruger #1
#Kasper

Mange tak. Det virker ikke helt endnu, men er det fordi at min '<div id="result">' skal være tom?

Der står således:

Fold kodeboks ind/udKode 


Og JS koden ser således ud:

Fold kodeboks ind/udJScript kode 


Men stien til chatlog.php er:
include/chatlog.php

Og chatten ligger under:
/chat/

Så jeg er i tvivl om det kører rigtigt :)



Indlæg senest redigeret d. 05.02.2011 16:29 af Bruger #16025
Jeg har haft skiftet koden ud med:

Fold kodeboks ind/udJScript kode 


Men det virker dog heller ikke -.-



Min chatlog.php ser således ud:

Fold kodeboks ind/udPHP kode 




Hej Daniele,

Du skal stadig angive den rigtige sti i $.get kaldet. Hvis du er i tvivl, så prøv at placere de to filer i samme mappe. Brug evt. også alert() funktionen til at tjekke de to parametre som jQuery sætter, nemlig data og status, hvis det stadig ikke virker.

Mvh.

Kasper (TSW)



#Kasper

De er i samme mappe. Når man skal ind på chatten går den ind på /chat/

Stierne til selve filerne er ligeledes:
/include/chatlog.php
/include/chat.php



I så fald må jeg antage at chat.php includes fra en anden fil, eller at du roder med URL rewrites, hvilket sikkert er årsagen til at det ikke virker. Du kan prøve at lave kaldet til "/include/chatlog.php" i stedet for bare "chatlog.php". Virker det stadig ikke, så prøv at smide et link til en side hvor vi kan se problemet. Det er altid en god ide at gøre.

Mvh.

Kasper (TSW)



<< < 12 > >>
t