02. februar 2001 - 12:54Der er
27 kommentarer og 1 løsning
Lidt chat problemer
Hej alle sammen. Jeg vil prøve at lave en chat. så jeg har brug for et ret grundlæggende svar på et ret grundlæggende problem.
Krav : -------------------------------------------------------------------- Jeg vil helst ikke anvende en database, til at opbevare de beskeder der bliver postet. Selve chatten kommer til at bestå af 3 frames, hvor frame1 er der hvor beskederne står, frame2 er der hvor beskederne skrives, og frame 3 bruges til noget helt andet....
JEG VIL IKKE HAVE ET LINK TIL EN CHAT DER ER LAVET...HVIS I VIL BRUGE DEM SOM EKSEMPEL SÅ KLIP DET UD I VIL BRUGE OG POST DET HER MED EN FORKLARING..... -------------------------------------------------------------------- ************************************* Hvordan skal man opdatere frame1 hos bruger1, når bruger2 indtaster en besked? (uden at bruger1 skal trykke på opdater eller noget...) Jeg har læst mig frem til at man kan gøre det når en Application variabel opdateres, men hvordan gøres det rent praktisk.Og hvordan bevares de gamle beskeder...?
Kasseper
P.S: der skal jo nok både bruges javascript og asp kode, men jeg vidste ikke lige hvilken kategori jeg skulle vælge...
Brug af AI afslører de svagheder, virksomheder allerede har opbygget gennem års cloud-transformation, nye SaaS-løsninger og fragmenterede sikkerhedssystemer.
Er der virkelig ingen der kan forklare mig det ???? Hvis i downloader denne her : http://www.netcoders.dk/download.asp?mode=dl&download_id=602 og kigger hvordan han gør, også forklare mig det, så skulle den være hjemme. Problemet er bare at jeg ikke kan gennemskue hans kode...Så er der ikke en der vil gøre forsøget..?
Hvordan mener du? Den text du smider i frame1 skal bare tilføjes <meta http-equiv=\"Refresh\" content=\"sekunder; URL=adresse\">. Du kan evt. se på www.parazite.f2s.com/chat/ , hvor der bruges samme metode til at opdatere og det hele kører på textfiler.
Tror heller ikke løsningen med updateOnAction vil virke fornuftigt. Har du blot 20 aktive brugere i din chat, så vil chatten opdatere næsten hvert sekund, hvilket eksempelvis mit 56 K modem IKKE kan klare! :o)
erikjacobsen : Nice chat! Dog er der et problem med hastigheden - ved ikke om det bare er med mit 56K, men DAMN den er sloooooow at starte op. Ellers fed scripting!
NÆB, jeg har ikke en eneste forstnd på PHP.... Jeg skal bruge noget ASP, helst, ellers må jeg jo sætte mig ind i PHP.
Jeg vil jo altså helst have lidt kode på bordet og en forklaring.
ANYWAY, så har jeg stadig brug for at kunne opdatere en frame når der er en ændring i en Application variabel..... Er det ikke det du mener med updateOnAction Parazite ??? Hvordan virker det ????
kasseper:> hvis du forøvrigt laver en chat der opdater sig selv hvert 3-5 sekund kan jeg på det kraftigste anbefale at du bruger et layer (<div>) og noget javascript i en skjult frame, til at opdatere indholdet i chatten .. ellers tror jeg dine brugere bliver lidt synsforstyrrede med alt det \"blinkeri\"
Buuhuuuuuu:( Er der slet ikke nogen der gider at give mig lidt kode og forklaring..... Jeg er blevet lidt forviret : Jeg skal lave det med layers/div tags, men hvordan kan man nu det ??? Hvis en anden joiner chatten, vil det så ikke være tomt, når man kommer ind ?? Og hvordan ser bruger2 hvad bruger1 skriver, uden at siden opdateres.....?
Jeg er sq lidt på bar bund nu ??? Desuden skal jeg også bruge den opdaterings rutine, der opdatere en frame, når der er en ændring i en application variabel, er der ikke en der har den lige ved hånden....?
1 row: indhold 2 row: der hvor man skriver teksten, form target=\"3 row\'s frame name\" 3 row: en skjult frame der opdateres hvert 3 sekund (eller deromkring) vha. f.eks. et META tag
på indholdssiden laver du et <div> layer der er højde/bredde 100% og ingenting i det, husk et ID på det. f.eks. \"content\"
2 row\'s siden laver du en normal form som sendes til f.eks. \"update.asp\" med target i den skjulte frame.
i den skjulte frame laver du det ASP der skal processe det input brugeren har skrevet, desuden skal der indsættes kode (javascript) der automatisk opdaterer det <div> layer der ligger i frame 1.
jeg har noget kode jeg selv bruger i en chat (javascript koden...) hvis du vil se den må du sige til.
kasseper:> lige et tillæg: \"Desuden skal jeg også bruge den opdaterings rutine, der opdatere en frame, når der er en ændring i en application variabel, er der ikke en der har den lige ved hånden....?\"
det gør man autokatisk når den skjulte frame opdateres
Jeg vil da meget gerne se dit javascript tdaugaard !!!
Der er dog en ting jeg ikke lige forstår.....I denne her : http://www.netcoders.dk/download.asp?mode=dl&download_id=602 (som er den aspchat jeg har snakket om før...) Skriver han at han opdatere sin frame hvert .90 sekund, eller når der er noget i en app. variabel...Hvordan det ?????
For x = 1 To 20 strTxt = Application(\"samtale_\" & x & \"_bruger_\" & session(\"Chatuser\")) strTxt = Replace(strTxt, Chr(39), \"\\\'\") strTxt = Replace(strTxt, Chr(34), \""\")
strTekst = strTekst & strTxt & \"</b></i><br>\" next
strSelUsers = \"\" intJSCount = 1 For i = 1 To 20 If Application(\"chatbruger_\" & i) > \"\" Then If Application(\"chatbruger_\" & i) <> Session(\"chatbruger\") Then strSelUsers = strSelUsers & \"items[\" & intJSCount & \"] = \"\"new Option(\'\" & Application(\"chatbruger_\" & i) & \"\', \'\" & i & \"\')\"\";\" & vbCrLf
intJSCount = intJSCount + 1 End If end if Next %> <html> <head> <meta http-equiv=\"refresh\" content=\"3\"> <script language=\"JavaScript\"> <!-- var ie55=(parseInt(navigator.appVersion)>4 && parseInt(navigator.appMinorVersion)>4) ? true:false; var contentTimer; var userTimer; var expirTimer; var msgTimer;
window.onerror=handleerr;
function handleerr() { contentTimer=setTimeout(\"showcontent();\", 100); msgTimer=setTimeout(\"update_users();\", 100); }
function showcontent() { var cnt = \"<%=strTekst%>\";
var selIndex = parent.skriv.form1.brugere.selectedIndex;
if (selIndex > -1 ) var selectedUser = parent.skriv.form1.brugere.options[selIndex].value; if (selIndex==-1) selIndex=0; if (selIndex > parent.skriv.form1.brugere.options.length-1) selIndex=0;
parent.skriv.form1.brugere.options.length = 0;
for (var index=0; index<items.length; index++) { parent.skriv.form1.brugere.add(eval(items[index])); }
for (var index=0; index<parent.skriv.form1.brugere.options.length;index++) { if (parent.skriv.form1.brugere.options[index].value == selectedUser) selIndex = index }
kasseper:> det kan ikke lade sig gøre. Jeg har kigget på den der chat du fortalte om (hvilken forøvrigt stinker!) og den opdaterer kun ved fast interval og når der bliver sendt noget. Dvs. DIN skærm opdaterer når du sender noget, mens andres først bliver når de sender eller ved intervallet.
kasseper:> nu har jeg forøvrigt besluttet mig for at lægge min egen chat til fri download, og det kan muligvis være du kan bruge det til noget, så du kan hente den på http://www.tdaugaard.dk/x/easychat-2.5-mdb.ace (brug WinACE til at unace\'e - www.winace.com)
OK, tdaugaard. Jeg syntes altså også at det stred mod al den logik jeg har lært. At serveren kunne opdatere clienten, uden clienten havde noget at sige.....!!! Jeg arbejder lige lidt på sagen, vender tilbage med point posen lidt senere, tak for hjælpen....;)
kasseper:> \"At serveren kunne opdatere clienten, uden clienten havde noget at sige.....!!!\"
det er netop det den IKKE kan. Serveren kan ikke \"sende\" et \"reload\" request til f.eks. IE. Og hvis den kunne ville der nok komme en \"The server has requested a page reload. Accept ? [YES] [NO]\" box ..
SORRY ;(.... Jeg var så optaget af at optimere min chat, så jeg glemte alt om mit spg..... Jeg hader selv når jeg sidder og venter og der ikke sker en skid,.. Og så selvfølgelig tak for hjælpen...
kasseper:> *S* det er helt ok; det er jo ikke værre end som her at man lige kan skrive en kommentar :-)
Det var så lidt :-)
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.