05. september 2001 - 01:51Der er
12 kommentarer og 3 løsninger
Tøm cache ?!!..
Jeg har bygget et efterhånden halvstort administrations modul til tilpasning af kunders hjemme side(r)
og der er 2 ting som er røv-irreterende, den ene er at administrations-delen SKAL bruge ie5.5 for at kunne gemme i databasen og fører værdier over via sessions, - Hvordan kan man finde ud af hvad det er som ie5.0 IKKE kan håndtere - og så få de fejl rettet, (og ie5.5 + ie5.0 på samme maskine ? - Naaaa....)
Den anden ting er at flere kunder(som bruger ie5.5) oplever at når de sidder og retter på sider, og opdatere (gemmes i access db) så når de kommer tilbage til siden som der ser ud, er det STADIG det gamle indhold som er fremme, når de så går ind og retter igen-igen, er det også det gamle indhold der kommer frem, det mærkelige her er at kigger man i db, er det det nye indhold som ligger gemt
og det er kun en gang i mellem at den viser gammelt indhold på forsiden
Jeg har fgl. liggende på alle asp sider som burde tømme cache og lign. <%@LANGUAGE = VBScript %> <% Option Explicit Response.Expires = -1000 response.buffer = false %> <meta http-equiv=\'pragma\' content=\'nocache\'> <meta http-equiv=\'case-control\' content=\'no-store\'>
og jeg har prøvet at undgå for mange <% og %>\'er, dvs. jeg skriver så meget html kode ind som response.write \"html.....\" &_ \"og mere mere html.....\" for at undgå den spildtid der opstår når der skal skiftes mellem .asp og <HTML> koder...
HVAD ER DER GALT ?!!... point gives for svar på metode til fejlfinding af ie5.0 fejl som ikke er fejl på ie5.5 (sikkert asp koderne sessions ell. lign.)
og point til opskriften på den ultimative cache/slet offline indholdet for jeg bliver sindsyg af den der: Jeg_Tager_Lige_De_Sider_Som_Ligger_Som_Offline_Indhold_I_Stedet_For_At_Læse_Siden_Forfra_Igen
kichian >> jeg ANER ikke om det ER sessions den går død i, men et eller andet virker i hvertfald ikke, så jeg er MEGET åben for forslag... og jeg prøver at rette META\'erne til
tdaugaard >> der var bare en der fortalte mig at hvergang \"den\" skal åbne og lukke asp compileren bruger den tid - ikke meget, men den bruger tid
Alle >> Burde noget af det her ikke tømme hvad der er at tømme ??.. Option Explicit Response.Expires = -1000 response.buffer = false
???...
og det STORE minus er stadig at det ikke virker optimalt i ie5.0 har ingen af jer haft problemer med ie5.0 vs ie5.5 ??..
Hvordan overfører du data i administrationsdelen? ie5.5 er mere avanceret mht. XML end 5.0 og supporterer CSS bedre. Så du må have lavet noget meget \"fancy\" siden 5.0 ikke virker efter hensigten.
kichian >> her er siderne til opdatering af menuerne: ---------------------------------- Side med formen: ---------------------------------------- <html> <head> <meta http-equiv=\"pragma\" content=\"nocache\"> <title>Rediger</title> <link rel=\"Stylesheet\" href=\"rediger.css\"> <SCRIPT LANGUAGE=\"VBScript\"> Sub Start_onClick Dim TheForm Set TheForm = Document.thisForm If IsNumeric(TheForm.VisNr.Value) Then TheForm.Submit Else MsgBox \"Vær venlig kun at indtaste tal\" & vbCrLf & \" i nummerfeltet !.\" End If End Sub </SCRIPT> </head> <% fkst = now MENU = Request.Querystring(\"menu\") ID = Request.Querystring(\"id\") dkTEKST = Request.Querystring(\"dktekst\") ukTEKST = Request.Querystring(\"uktekst\") deTEKST = Request.Querystring(\"detekst\") LINK = Request.Querystring(\"link\") VISNR = Request.Querystring(\"visnr\") if VISNR = \"\" then VISNR = \"10\" AID = Request(\"AID\") BID = Request(\"BID\") SPROG = Session(\"SPROG\")
if SPROG = \"dk\" then loadIT = \"dkTekst\" if SPROG = \"uk\" then loadIT = \"ukTekst\" if SPROG = \"de\" then loadIT = \"deTekst\" %>
<form method=\"POST\" name=\"thisForm\" action=\"OpdaterMenu.asp?menu=<%= MENU %>&AID=<%= AID %>&BID=<%= BID %>\"> <table border=\"0\" width=\"60%\" align=\"center\"> <% if Session(\"DANSK\") = \"JA\" then Response.write \"<tr><td>\" if SPROG = \"dk\" then Response.write \"<strong> DK-TEKST </strong>\" else Response.write \"Dk-tekst\" end if %> </td><td><input type=\"text\" class=\"flt\" name=\"dkTekst\" size=\"20\" Value=\"<%= dkTEKST %>\"></td></tr> <% end if
if Session(\"ENGELSK\") = \"JA\" then Response.write \"<tr><td>\" if SPROG = \"uk\" then Response.write \"<strong> UK-TEKST </strong>\" else Response.write \"Uk-tekst\" end if %> </td><td><input type=\"text\" class=\"flt\" name=\"ukTekst\" size=\"20\" Value=\"<%= ukTEKST %>\"></td></tr> <% end if
if Session(\"TYSK\") = \"JA\" then Response.write \"<tr><td>\" if SPROG = \"de\" then Response.write \"<strong> DE-TEKST </strong>\" else Response.write \"De-tekst\" end if %> </td><td><input type=\"text\" class=\"flt\" name=\"deTekst\" size=\"20\" Value=\"<%= deTEKST %>\"></td></tr> <% end if %> <tr> <td width=\"40%\" align=\"right\">Nr. i Menuen (Tal)</td> <td width=\"60%\"><input type=\"text\" class=\"flt\" name=\"VisNr\" size=\"3\" Value=\"<%= VISNR %>\"></td> </tr> <% if MENU = \"A\" then %> <tr> <td align=\"center\">Link <input type=\"radio\" name=\"link\" value=\"1\" <% if LINK = 1 then %>Checked<% else %> <% end if%>></td> <td bgcolor=\"#019318\" align=\"center\"><Font color=\"#AAFFAA\"> -eller kategori </font><input type=\"radio\" name=\"link\" value=\"0\" <% if LINK = 0 then %>Checked<% else %> <% end if%>></td> </tr> <% End If %> <tr><td> </td></tr> <tr> <td width=\"100%\" colspan=\"2\" align=\"center\"> <input class=\"knap\" type=\"button\" value=\"Opdater\" onClick=\"Start_onClick()\"> <input class=\"knap\" type=\"button\" value=\"Tilbage\" onClick=\"history.go(\'-1\')\"></td> </tr> </table> <input type=\"Hidden\" Value=\"<%= ID %>\" Name=\"MenuID\"> </form> </table> </body> </html> ---------------------------------------- Form side slut -----------------------------------
if MENU = \"A\" then go2 = \"menu=retA\" end if if MENU = \"B\" then go2 = \"menu=retB&AID=\" & AID end if if MENU = \"C\" then go2 = \"menu=retC&BID=\" & BID end if %> <html> <head> <meta http-equiv=\"pragma\" content=\"nocache\"> <script> setTimeout(\"parent.menu.location=\'../menu.asp\';\", 100); </script> <META HTTP-EQUIV=\"REFRESH\" CONTENT=\"2; URL=../delud.asp?<%= go2 %>;\"> </head>
Jeg kan ikke lige se hvad der ikke funker, og jeg har ikke ie5.0 længere. Prøv at lave en side med en formular, der bliver submittet som du har vist. Siden der behandler formularen skal bare vise de data som er indtastet i formularen (for each x in Request.Form). Hvis data er overført som forventet, så er det ikke klient-koden som fejler.
Jo, for det første hedder meta tag\'en pragma = no-cache (med et minus imellem \'no\' og \'cache\').
For det andet, er der en bug i Internet Explorer (en? haha kom igen), som har at gøre med hvornår den cacher siden (vistnok når halvdelen af dens 64kB buffer er fyldt).
Men som de gamle grækere sagde, lav en sekundær \'head\' sektion aller sidst i dit dokument og smid endnu en meta: pragma=no-cache tag derned, så burde det stoppe IE. Eksempel:
Hvis det ikke virker så prøv at refresh\'e én gang til :O)
Desuden kan det være der er en proxy server mellem dig og dine brugere som cacher siderne (evt. en transparent én, så brugerne ikke nødvendigvis ved noget om det).. Sådan en fætter skal have pragma: no-cache serveret i HTTP headeren (hvilket i øvrigt også burde stoppe IE), mens proxy servere typisk er ligeglade med \'expires\' tag\'en, og højst sandsynligt også er ligeglade med dine meta tags inde i html\'en... Tilføj en \'Pragma: no-cache\' til HTTP headeren (hvis det er HTTP/1.0, ellers er det vist Cache-Control: no-cache i HTTP/1.1), og det burde få proxy servere (og IE?...) til at holde op med at cache indholdet...
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.