/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Opdatering af del af side
Fra : Rune Jensen


Dato : 05-11-07 16:51

Hej, gruppe.

Er det muligt at opdatere en del af en webside med en blanding af javascript
og serverside - det er vidstnok kendt som AJAX - efter følgende opgave...
Jeg kunne forestille mig et text-area, hvis indhold faktisk er indholdet af
en bestemt .txt-fil på serveren. Så hvordan opdatere det tekstarea med
indholdet af filen, når indholdet af filen ændres? Er det i det hele taget
muligt som jeg beskriver det?


MVH
Rune Jensen



 
 
Birger (05-11-2007)
Kommentar
Fra : Birger


Dato : 05-11-07 17:04

"Rune Jensen" <runeofdenmark@hotmail.com> skrev i en meddelelse
news:472f3a3b$0$15009$456a7185@news.cirque.dk...
> Hej, gruppe.
>
> Er det muligt at opdatere en del af en webside med en blanding af
> javascript og serverside - det er vidstnok kendt som AJAX - efter følgende
> opgave... Jeg kunne forestille mig et text-area, hvis indhold faktisk er
> indholdet af en bestemt .txt-fil på serveren. Så hvordan opdatere det
> tekstarea med indholdet af filen, når indholdet af filen ændres? Er det i
> det hele taget muligt som jeg beskriver det?
>

Den del der handler om opdatering, er nem nok.
Hent filen med AJAX, og indsæt den via textarea.innerHTML eller
textarea.value

Hvis du mener, at du vil have det opdateret _når_ filen ændres på serveren,
så er det straks mere kompliceret, for det ved clienten (browseren, dit
script) ikke noget om, og der vil skulle sendes besked fra serveren til
browseren, at den skal opdatere.
Jeg er ikke lige klar over hvordan den slags gøres. Men at det er muligt er
der ingen tvivl om.
Tror ikke chat, bruger timer til opdateringer. ;>)

Birger



Erik Ginnerskov (05-11-2007)
Kommentar
Fra : Erik Ginnerskov


Dato : 05-11-07 23:22

Birger wrote:

> Tror ikke chat, bruger timer til opdateringer. ;>)

Hvorfor tror du ikke det? Den chat (i asp), jeg har kørt forsøg med, bruger
en clientside timer til at holde brugerlisten opdateret.

--
Med venlig hilsen
Erik Ginnerskov
http://hjemmesideskolen.dk/ - http://ginnerskov.dk/
http://html-faq.dk



Birger (06-11-2007)
Kommentar
Fra : Birger


Dato : 06-11-07 01:51

"Erik Ginnerskov" <erik@donotspammeplease.invalid> skrev i en meddelelse
news:472f975f$0$90276$14726298@news.sunsite.dk...
> Birger wrote:
>
>> Tror ikke chat, bruger timer til opdateringer. ;>)
>
> Hvorfor tror du ikke det? Den chat (i asp), jeg har kørt forsøg med,
> bruger en clientside timer til at holde brugerlisten opdateret.
>


Jeg sagde ikke det ikke kunne lade sig gøre.
Og det kan da være en løsning Rune skal overveje.
Sider der står konstant og opdaterer, kan være gevaldig generende (specielt
for IE brugere - klik, klik, klik, ... dog ikke ved AJAX), og spilde en hel
del båndbredde (cache og PC resourcer). I hvert fald dem jeg har set.


Birger



Johan Holst Nielsen (06-11-2007)
Kommentar
Fra : Johan Holst Nielsen


Dato : 06-11-07 13:06

Birger wrote:
> "Erik Ginnerskov" <erik@donotspammeplease.invalid> skrev i en meddelelse
> news:472f975f$0$90276$14726298@news.sunsite.dk...
>> Birger wrote:
>>
>>> Tror ikke chat, bruger timer til opdateringer. ;>)
>> Hvorfor tror du ikke det? Den chat (i asp), jeg har kørt forsøg med,
>> bruger en clientside timer til at holde brugerlisten opdateret.
>>
>
> Jeg sagde ikke det ikke kunne lade sig gøre.
> Og det kan da være en løsning Rune skal overveje.
> Sider der står konstant og opdaterer, kan være gevaldig generende (specielt
> for IE brugere - klik, klik, klik, ... dog ikke ved AJAX), og spilde en hel
> del båndbredde (cache og PC resourcer). I hvert fald dem jeg har set.

Men klienten kan ikke få at vide filen er opdateret automatisk på serveren.

Muligheden var at lave 2 requests - f.eks. hver 10 sekund - som giver en
"last modified" dato fra filen (kan nemt findes via f.eks. i PHP via
filemtime()). Hvis denne er nyere end nuværende laver man en nyt request
hvor man henter det nye indhold af filen.

Men igen - det afhænger meget fra ting til ting om jeg vil kalde hele
indholdet af tekstfilen hver gang - eller tjekke på en modified. Hvis
den sjældent opdateres og der er meget tekst i tekstfilen ville jeg
tjekke modfied datoen. Hvis de tit opdateres - eller der er meget lidt
tekst vil jeg blot opdatere hele teksten ved hvert kald.

--
Johan Holst Nielsen
Freelance PHP Developer - http://phpgeek.dk

Rune Jensen (07-11-2007)
Kommentar
Fra : Rune Jensen


Dato : 07-11-07 00:07

"Johan Holst Nielsen" skrev...

> Men klienten kan ikke få at vide filen er opdateret automatisk på
> serveren.

Nej, så langt er jeg med - og Birger havde også ret i, det er tænkt på som
en art shoutbox eller chat, derfor text-area. I begge tilfælde vil der ikke
kræves meget tekst. Det normale er vel 10-15 linjer ialt, som skal vises, og
max 2 linjer, som skal afsendes. Resultatet i et textarea, og mere end de
dér 10-15 linjer, så slettes den ældste linje, så der er en nogenlunde maks
størrelse på fil.

Det er vel også fint nok at gøre som du foreslår, den forstår jeg, og det
lyder som om, det kan virke. Der kommer ikke overbelastning på med brugere.
Problemet er nok mere, når det skal kodes - der kunne det være rart med
noget håndfast. F.eks. hvis der er nogle kommandoer, man næsten altid
bruger, og som jeg så skal lære først. Nu er jeg rimelig ny i AJAX, derfor
nok lidt dumme sprøgsmål ind i mellem


MVH
Rune Jensen



Birger (07-11-2007)
Kommentar
Fra : Birger


Dato : 07-11-07 01:46

"Rune Jensen" <runeofdenmark@hotmail.com> skrev i en meddelelse
news:4730f397$0$14995$456a7185@news.cirque.dk...
> "Johan Holst Nielsen" skrev...
>
>> Men klienten kan ikke få at vide filen er opdateret automatisk på
>> serveren.
>
> Nej, så langt er jeg med - og Birger havde også ret i, det er tænkt på som
> en art shoutbox eller chat, derfor text-area. I begge tilfælde vil der
> ikke kræves meget tekst. Det normale er vel 10-15 linjer ialt, som skal
> vises, og max 2 linjer, som skal afsendes. Resultatet i et textarea, og
> mere end de dér 10-15 linjer, så slettes den ældste linje, så der er en
> nogenlunde maks størrelse på fil.
>
> Det er vel også fint nok at gøre som du foreslår, den forstår jeg, og det
> lyder som om, det kan virke. Der kommer ikke overbelastning på med
> brugere. Problemet er nok mere, når det skal kodes - der kunne det være
> rart med noget håndfast. F.eks. hvis der er nogle kommandoer, man næsten
> altid bruger, og som jeg så skal lære først. Nu er jeg rimelig ny i AJAX,
> derfor nok lidt dumme sprøgsmål ind i mellem
>
>
> MVH
> Rune Jensen
>

Der findes vel ikke dumme spørgsmål?
Hvis du er interesseret, kan jeg prøve at hive det essentielle ud af min
erfaring fra min side, og smide det op som tekstfil.
Har lidt travlt pt., så det bliver ikke før i morgen eftermiddag, tidligst.

Det er - behøver i hvert fald ikke være - så farligt indviklet.

Ellers er der adskillige "frameworks" at finde på nettet. Men de virker - på
mig - meget store og mere indviklede end de behøver at være. Tror måske det
har noget at gøre med at de anvendes til XML, og ikke bare simpel tekst, som
AJAX udmærket også kan bruges til.
Og jeg kan altså bedst lide selv at forstå, hvad der sker, hvornår og
hvorfor.

Birger



Rune Jensen (07-11-2007)
Kommentar
Fra : Rune Jensen


Dato : 07-11-07 03:08

"Birger" skrev...

> Der findes vel ikke dumme spørgsmål?

Skulle nok have været "banale"

> Hvis du er interesseret, kan jeg prøve at hive det essentielle ud af min
> erfaring fra min side, og smide det op som tekstfil.

Jeg er før blevet hjulpet på den måde... det må du meget gerne.

> Har lidt travlt pt., så det bliver ikke før i morgen eftermiddag,
> tidligst.

Fair nok

> Det er - behøver i hvert fald ikke være - så farligt indviklet.

Nej, tror jeg egentlig heller ikke, når man forstår teknikken. Men jeg skal
jo starte et sted, så håber ikke sådan en shoutbox er for stor en
mundfuld Så leder også efter viden omkring hvad der gør, at man kan
bringe informationer fra serveren (f.eks. variable) til hjemmesiden
clientside, måske. Generelle ting, som gør, jeg selv kan arbejde videre.

> Ellers er der adskillige "frameworks" at finde på nettet. Men de virker -
> på mig - meget store og mere indviklede end de behøver at være.

Det er også mit indtryk.

> Tror måske det har noget at gøre med at de anvendes til XML, og ikke bare
> simpel tekst, som AJAX udmærket også kan bruges til.

Ja, jeg læste, X-et står for XML. Men ærligt, jeg er slet ikke god nok endnu
til at beskæftige mig med XML, selvom jeg forstår (noget af) meningen med
det.

> Og jeg kan altså bedst lide selv at forstå, hvad der sker, hvornår og
> hvorfor.

Ja.... af samme grund, jeg prøver at finde et eller andet holdepunkt i
stedet for bare at tage et færdigt script.

MVH
Rune Jensen



Birger (07-11-2007)
Kommentar
Fra : Birger


Dato : 07-11-07 12:03


"Rune Jensen" <runeofdenmark@hotmail.com> skrev i en meddelelse
news:47311e18$0$14996$456a7185@news.cirque.dk...
> "Birger" skrev...
>
>> Der findes vel ikke dumme spørgsmål?
>
> Skulle nok have været "banale"
>


En shoutbox, skulle vel ikke være så stor en mundfuld.
Man kan jo også bruge AJAX til at sende data til serveren... ;>)
Havde en shout på tidligere familieside - men kan lige nu, ikke huske om jeg
ændrede den til AJAX fra tekst-fil.
Oprindelig programmeret i en iframe...

Nå, men...

Har skrevet lidt generelt, og et udførlig kommenteret eksempel her
http://bbsorensen.dk/stuff/ajax_med_tekst.js

Svarer gerne på dine banale spørgsmål, hvis jeg kan ;>)


Birger



Jørn Andersen (08-11-2007)
Kommentar
Fra : Jørn Andersen


Dato : 08-11-07 05:11

On Wed, 7 Nov 2007 12:03:13 +0100, "Birger" <sdc@bbsorensen.com> wrote:

>Har skrevet lidt generelt, og et udførlig kommenteret eksempel her
>http://bbsorensen.dk/stuff/ajax_med_tekst.js

Jeg lytter lige med på AJAX-lektionen.

Jeg er meget lidt stiv i JavaScript, men efter at have rettet:
document.getElementByID
til
document.getElementById
fik jeg det til at virke.


Mvh. Jørn

--
Jørn Andersen,
Brønshøj

Birger (08-11-2007)
Kommentar
Fra : Birger


Dato : 08-11-07 11:10

"Jørn Andersen" <jorn@jorna.dk> skrev i en meddelelse
news:2t25j395p32e4u9n7achhupvr7tokqo03t@4ax.com...
> On Wed, 7 Nov 2007 12:03:13 +0100, "Birger" <sdc@bbsorensen.com> wrote:
>
>>Har skrevet lidt generelt, og et udførlig kommenteret eksempel her
>>http://bbsorensen.dk/stuff/ajax_med_tekst.js
>
> Jeg lytter lige med på AJAX-lektionen.
>
> Jeg er meget lidt stiv i JavaScript, men efter at have rettet:
> document.getElementByID
> til
> document.getElementById
> fik jeg det til at virke.
>
>
> Mvh. Jørn
>
> --
> Jørn Andersen,
> Brønshøj

Helt klart en slåfejl, som straks vil blive rettet ;>)
Tak

Birger



Rune Jensen (09-11-2007)
Kommentar
Fra : Rune Jensen


Dato : 09-11-07 12:37

"Birger" skrev...

> En shoutbox, skulle vel ikke være så stor en mundfuld.
> Man kan jo også bruge AJAX til at sende data til serveren... ;>)
> Havde en shout på tidligere familieside - men kan lige nu, ikke huske om
> jeg ændrede den til AJAX fra tekst-fil.
> Oprindelig programmeret i en iframe...

Ja... det tænkte jeg på, men det er jo lidt uddateret med iframe;)

> Nå, men...
>
> Har skrevet lidt generelt, og et udførlig kommenteret eksempel her
> http://bbsorensen.dk/stuff/ajax_med_tekst.js

Mange tak, jeg går i gang med at læse.

> Svarer gerne på dine banale spørgsmål, hvis jeg kan ;>)

Det skulle ikke undre, om der kommer flere;)


MVH
Rune Jensen



Rune Jensen (10-11-2007)
Kommentar
Fra : Rune Jensen


Dato : 10-11-07 07:09

Birger" skrev...

> Har skrevet lidt generelt, og et udførlig kommenteret eksempel her
> http://bbsorensen.dk/stuff/ajax_med_tekst.js

....og den virker helt perfekt, jeg har lige testet - tak for det. Hvad med
at smække den forklaring på din hjemmeside, den er jo genial

PS - roder lige med, hvordan man sender tekst - tror, det er mere
kompliceret, da der jo skal noget serverside ind. Derudover, så skal den
HentFil funktion kaldes med en timer, men der burde være en vis chance for,
jeg kan klare den


MVH
Rune Jensen



Birger (10-11-2007)
Kommentar
Fra : Birger


Dato : 10-11-07 10:41

"Rune Jensen" <runeofdenmark@hotmail.com> skrev i en meddelelse
news:4735497f$0$15016$456a7185@news.cirque.dk...
> Birger" skrev...
>
>> Har skrevet lidt generelt, og et udførlig kommenteret eksempel her
>> http://bbsorensen.dk/stuff/ajax_med_tekst.js
>
> ...og den virker helt perfekt, jeg har lige testet - tak for det. Hvad med
> at smække den forklaring på din hjemmeside, den er jo genial
>
> PS - roder lige med, hvordan man sender tekst - tror, det er mere
> kompliceret, da der jo skal noget serverside ind. Derudover, så skal den
> HentFil funktion kaldes med en timer, men der burde være en vis chance
> for, jeg kan klare den
>
>
> MVH
> Rune Jensen
>


Forklaringer kommer op - det havde jeg egentlig tænkt at gøre under alle
omstændigheder ;>) - omend i en lidt anderledes form.
Ting Ta'r Tid.

At sende data den anden vej, er ikke mere kompliceret end at hente dem.
Det er blot parametre der sendes med, og arbejdet der, er ganske rigtigt at
behandle og gemme dem serverside.

En timer burde du vel ikke have problemer med. ;>)

Birger



Rune Jensen (10-11-2007)
Kommentar
Fra : Rune Jensen


Dato : 10-11-07 18:15

"Birger" skrev...

> Forklaringer kommer op - det havde jeg egentlig tænkt at gøre under alle
> omstændigheder ;>) - omend i en lidt anderledes form.
> Ting Ta'r Tid.

Glæder mig

> At sende data den anden vej, er ikke mere kompliceret end at hente dem.
> Det er blot parametre der sendes med, og arbejdet der, er ganske rigtigt
> at behandle og gemme dem serverside.

Jeg skal lige høre - hvis man nu laver en form button-send, vil det så
automatisk blive sendt med, når man bruger post? Og kan det behandles
serverside og så sendes tilbage?

Jeg laver lige en test. Men du kan prøve at kigge på denne, som jeg ikke vil
have indekseret, og derfor gir lidt kryptisk:

runejensen dot dk/tips/ajax/kommentar_script.asp

....den virker, ved at der er sat en onclick på linket, som kalder scriptet.
Men i virkeligheden så skal jeg jo bruge en button i stedet, i en form, og
så post...

> En timer burde du vel ikke have problemer med. ;>)

Lige før, jeg kan lave det i hovedet - men må nok trods alt kigge lidt i
referencerne Men noget med: if mod(timer/hastighed) = =0{ burde vel kunne
gøre det

Iøvrigt, så skal scriptet jo kaldes både fra en form button og fra timeren.
Vil det konflikte? Den tegner vel den del op, som den er i gang med, før den
går videre til næste - det, som er forskellen på synkron og asynkron? Man
kunne forestille sig, at timeren og knappen bliver trigget samtidigt.

Sikker ikke forståeligt, det jeg skriver, men som sagt, laver lige en test.


MVH
Rune Jensen



Søg
Reklame
Statistik
Spørgsmål : 177455
Tips : 31962
Nyheder : 719565
Indlæg : 6408149
Brugere : 218880

Månedens bedste
Årets bedste
Sidste års bedste