Avatar billede JonAxel Nybegynder
22. januar 2010 - 15:05 Der er 12 kommentarer og
1 løsning

AJAX Auto Refresh?

Hejsa alle jer på eksperten..

Jeg er i øjeblikket igang med et site, hvor jeg har en lille chat hvor man kan skrive lidt sammen.

Men jeg gider ikke have en knap hvor der står "opdater" og så man hele tiden skal trykke for at opdatere..

Derfor tænkte jeg på om i havde noget som jeg kunne bruge?
eksempelvis i ajax.

Det ville jeg sætte stor pris på..

Hilsen Jon
Avatar billede public2 Nybegynder
22. januar 2010 - 15:18 #1
Du kan jo eventuel bruge eller kigge på én af de mange Ajax Chats der findes derude, hvor de fleste af dem bruger auto-update til at opdatere chatten.

Lavede selv en (eller modificerede en chat) for noget tid siden med JSON, som brugte netop en auto-update, så den funktion kan du jo som sådan bare "kopiere" eller bruge hele chatten.
Avatar billede JonAxel Nybegynder
22. januar 2010 - 16:08 #2
har du evt. en kode jeg kan se på?

fordi alle de koder jeg ser på, vil ikke fungere sammen med det jeg laver.
Avatar billede public2 Nybegynder
22. januar 2010 - 16:13 #3
Tja, altså den chat jeg byggede var til et bachelor projekt så den er blevet modificeret ret meget, så den kan fungere over flere sider og browsere, men jeg kan lige prøve at se det oprindelige script jeg brugte...

Ellers så har jeg da andre chat-scripts liggende, som du da kan få og kigge på.
Avatar billede JonAxel Nybegynder
22. januar 2010 - 16:15 #4
Jotak (;
Det var sødt af dig (:
Avatar billede public2 Nybegynder
22. januar 2010 - 16:23 #5
Jeg kunne ikke finde mit oprindelige script, men det er i hvert fald til at finde ved at søge lidt efter det på en af de mange ajax-script sider.

Men jeg havde et par PHP-Ajax chat / IM scripts, og selvom jeg ikke har testet dem alle, så ved jeg i hvert fald at én af dem har en auto-update funktion, men mit gæt er, at de alle har det, da der ikke rigtig er meget chat over det uden.

Du kan downloade alle scriptsene her:
http://www.box.net/shared/v5b18kc40o

God fornøjelse med dem :-)
Avatar billede JonAxel Nybegynder
22. januar 2010 - 16:38 #6
jeg kunne egentligt bare tænke mig noget simpelt.

Noget med at der bare skal proppes noget kode ind, og så virker det.

ikke alt muligt andet.
Bare én kode til at opdatere som man ligger ind i filen med chatten.

Noget fuldstændig simpelt
Avatar billede intenz Novice
22. januar 2010 - 16:44 #7
#6
Sådan fungerer verden ikke. Det kommer jo an på hvordan du har lavet din chat, både front- og backend.
Avatar billede JonAxel Nybegynder
22. januar 2010 - 16:47 #8
Jeg ville egentligt bare lave det sådan her:

$hent = mysql_query("SELECT * FROM chat ORDER BY id DESC LIMIT 10") or die(mysql_error());
while($vis = mysql_fetch_array($vis)) {

echo $vis[brugernavn];
echo $vis[besked];
}

noget i den stil ville jeg lave det.
Avatar billede intenz Novice
22. januar 2010 - 17:03 #9
Det kan du godt, så skal du bare sende et ajax kald til den fil der laver et kald, og så bruge javascript til at indsætte resultatet af det på din side.
Avatar billede JonAxel Nybegynder
22. januar 2010 - 17:05 #10
og den kode mangler jeg (:
Avatar billede intenz Novice
22. januar 2010 - 23:24 #11
Og det er ikke noget man lige kan forklare. Ajax er en kombination af front- og backend, enten må du skrive et mere præcist spørgsmål, eller kan du lære meget om ajax ved at søge på google:
http://www.google.dk/search?hl=da&rlz=1R2GGLL_da&q=ajax+tutorial&meta=&aq=0s&oq=ajax+tur
Avatar billede tjens Nybegynder
23. januar 2010 - 23:17 #12
Enig med intenz: Du er nødt til at studere lidt Ajax selv, og starte med nogle simle eksempler, for at få client/server mekanismerne i "værktøjskassen".

Der er et eksempel i dette spørgsmål:

http://www.eksperten.dk/spm/890356#reply_7474343

Prøv at lægge den på din egen server, og lav lidt ændringer så data i svaret kommer fra en database istedet.

PS: Der er ingen grund til at demosiden hedder .php: Den indeholder kun HTML og javascript, og burde have været .html . Det er kun scriptet der danner svaret der skal være PHP.
Avatar billede JonAxel Nybegynder
10. februar 2010 - 11:07 #13
Jeg fandt mit svar..

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> <!-- jQuery library -->
<script>
jQuery(document).ready(function(){ajax_update();}); 
</script>
<script type="text/javascript">
function ajax_update()  {
$.post("hentbesked.php", function(data){ 
$("#DIVBOKSEN").html(data);
setTimeout(ajax_update, 100);
});
}   
</script>
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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