12. oktober 2002 - 23:01Der er
9 kommentarer og 1 løsning
Client/server-connection
Hvordan kan jeg skabe en TCP-forbindelse til en server via (evt.) et script, og løbende kunne skrive til en hjemmeside, når den modtager data...
Jeg prøvede følgende i PHP:
Via fsockopen skabte jeg forbindelse til en server via TCP og brugte fgets til at hente de data der kom tilbage, og så skrev den dem ud på hjemmesiden, lukkede forbindelsen og afsluttede scriptet... Det jeg ville have var, at den skulle tjekke HELE tiden, og så når den modtog noget, skulle den skrive det ud - men den vil åbenbart ikke skrive noget ud løbende, for den skriver kun visuelt ud til siden, når scriptet afsluttes... :o(
Så det er ikke at få dataene på siden der er problemmet? Det er at opdatere dem? Jeg prøvede på et tidspunkt med en <iframe> og så et <meta> refresh, som opdatere hvert sekund.
Det fungered meget godt. Det eneste tegn der var på et siden opdatere var status linien "pulsede".
Det kommer an på hvor meget data der er, og hvor lang tid det tager at hente den, ellers kommer <iframen> til at blinke.
Men er det data som den mere eller mindre kunne gætte sig til hvad var om et sekund (ex. min "hvor langt er jeg i sangen" (har så ikke taget højde for at jeg kunne skifte til en ny)), kunne man gøre brug af Javascript.
Ellers er der jo en nødløsning som en Java-applet eller et ActiveX komponent.
Ideen om en frame eller en ieframe der opdaterede er ikke så dårlig, bortset fra, at mange i dag bruger explorer, hvor der er en irriterende klik-lyd hver gang siden opdaterer (hvilket driver folk til vandvid i længden...
en applet var måske en ide, men kan den skrive kode til websiden's source dynamisk?
ActiveX-componenten kræver jo, at man har slået ActiveX til i sin browser, hvilket de færreste har i dag, mht. sikkerhed - eller er jeg helt gal på den?
Synes godt om
Ny brugerNybegynder
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.