Avatar billede riishoj Nybegynder
27. januar 2003 - 20:49 Der er 1 kommentar og
2 løsninger

Side bliver ikke opdateret ved redirect

På siden vis_reservation2.asp kan jeg slette poster i en db, og for at undgå at slette ved en fejltagelse, har jeg lagt et javascript ind til at bekræfte sletningen. Siden kalder slet.asp som så redirecter videre til en side som burde blive opdateret efter sletning i db. Før jeg lagde javascriptet ind i vis_reservation2.asp blev der godt nok opdateret efter redirect. Kan nogen se hvorfor det ikke sker mere?

vis_reservation ser sådan ud:

<% Response.Buffer = True %>

<html>

<head>

<title>Vis reservation</title>
<LINK REL="StyleSheet"
HREF="../style.css"
TYPE="text/css">
</head>

<%
lektion = Request.Querystring("lektion")
dag = Request.Querystring("dag")
uge = Request.Querystring("uge")
reservation = Request.Querystring("reservation")



' Databaseforbindelse
ConnString = "DSN=riishojwebsoftdkdsn"
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open ConnString

' SQL forespørgsel
strSQL = "SELECT * FROM reserver WHERE reservation = '" & reservation & "' AND uge = '" & uge & "' AND dag = '" & dag & "' AND lektion = '" & lektion & "';"
Set rs = Conn.Execute(strSQL)
if rs.eof then
Response.Write"<p align='center'><font size=6>Der er ingen opgaver</font></p>"
Response.Write"<p align='center'><A HREF='skema.asp'>Tilbage til skemaet</A></p>"

else
%>
<body bgcolor="#FFFFFF" topmargin="0" leftmargin="0" background="../images/background7.gif">

       
      <table border="0" width="100%">
        <tr>
          <td width="39%"><img border="0" src="../images/kalender.gif"></td>
          <td width="61%"><font face="Verdana" size="5"><b>Reservation</b></font></td>
        </tr>
      </table>
<br>
<br>       
      <div align="center">
        <center>
        <table border="1" width="80%" bgcolor="#669999" cellspacing="0" cellpadding="0" bordercolor="#000000" bordercolorlight="#000000" bordercolordark="#000000">
          <tr>
            <td width="100%">
              <table border="0" width="100%" cellspacing="4" cellpadding="4">
                <tr>
                  <td width="16%" align="center"><b><font color="#FFFFCC" face="Verdana" size="2">Reservation</font></b></td>
                  <td width="16%" align="center"><b><font color="#FFFFCC" face="Verdana" size="2">Uge</font></b></td>
                  <td width="16%" align="center"><b><font color="#FFFFCC" face="Verdana" size="2">Dag</font></b></td>
                  <td width="17%" align="center"><b><font color="#FFFFCC" face="Verdana" size="2">Lektion</font></b></td>
                  <td width="17%" align="center"><b><font color="#FFFFCC" face="Verdana" size="2">Initialer</font></b></td>
                  <td width="17%" align="center"><b><font color="#FFFFCC" face="Verdana" size="2">Klasse</font></b></td>
                </tr>
                <tr>
                  <% Response.Write"<td width='16%' align='center'><font color='#FFFFFF' face=Verdana size='2'>&nbsp;"& rs("reservation") &"<BR></font></td>"%>
                  <% Response.Write"<td width='16%' align='center'><font color='#FFFFFF' face=Verdana size='2'>&nbsp;"& rs("uge") &"<BR></font></td>"%>               
                  <% Response.Write"<td width='16%' align='center'><font color='#FFFFFF' face=Verdana size='2'>&nbsp;"& rs("dag") &"<BR></font></td>"%>             
                  <% Response.Write"<td width='17%' align='center'><font color='#FFFFFF' face=Verdana size='2'>&nbsp;"& rs("lektion") &"<BR></font></td>"%>
                  <% Response.Write"<td width='17%' align='center'><font color='#FFFFFF' face=Verdana size='2'>&nbsp;"& rs("initialer") &"<BR></font></td>"%>
                  <% Response.Write"<td width='17%' align='center'><font color='#FFFFFF' face=Verdana size='2'>&nbsp;"& rs("klasse") &"<BR></font></td>"%>
              </tr>
              </table>
            </td>
          </tr>
        </table>
        </center>
      </div>

        <br>
      <table border="0" width="100%">
        <tr>
          <td width="100%">
            <script type="text/javascript">
          function confirmDelete() {
            if(confirm('Hvis du er sikker på, at du vil slette reservationen, så tryk OK. Ellers tryk Annuller.')) {
              document.location.href='slet.asp?reservation=<%=reservation%>&lektion=<%=lektion%>&dag=<%=dag%>&uge=<%=uge%>';
            }
          }
        </script>
      <table border="0" width="100%">
        <tr>
          <td width="100%">
            <p align="center"><A HREF='java script:confirmDelete();'>Slet opgave</A></td>
        </tr>
      </table>
<%end if%>
<%
' Rydder op efter os
Conn.Close
Set Conn = Nothing
%>

   
<p align="center"><input type="button" value="&lt;--Tilbage" onClick="history.back();"></p>

   
</body>
</html>




slet.asp ser sådan ud:

<%Response.buffer = true%>
<html>

<head>

<title>Slet opgaven</title>
</head>

<body> 
<%
' Databaseforbindelse
ConnString = "DSN=riishojwebsoftdkdsn"
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open ConnString

uge = request.querystring("uge")
dag = request.querystring("dag")
lektion = request.querystring("lektion")
reservation = request.querystring("reservation")


' SQL sletter record
strSQL = "DELETE * FROM reserver WHERE reservation = '" & reservation & "' AND uge = '" & uge & "' AND dag = '" & dag & "' AND lektion = '" & lektion & "';"

Conn.Execute(strSQL)

' Luk databaseforbindelse
Conn.Close
Set Conn = Nothing

Response.Redirect ("fysik.asp?uge=" & uge & "&reservation=" & reservation & "")


%>
<h1>Opgaven er slettet!</h1>
 
</body>

</html>
Avatar billede _darkstar_ Nybegynder
28. januar 2003 - 00:11 #1
Prøv at sørge for at sende en Expires-header med. Jeg ved ikke hvad metoden hedder, men du skal sørge for at den side som der redirectes til, har sendt en Expires: 0 - header med. Ellers bliver den bare hentet i klientens cache.
Avatar billede loukas Mester
28. januar 2003 - 00:28 #2
Hvis du indsætter det her øverst på den side som ikke opdateres, skulle den gerne gøre det nu.   

<%
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.CacheControl = "no-cache"
%>
Avatar billede riishoj Nybegynder
28. januar 2003 - 13:24 #3
Tak for jeres brugbare svar. Jeg har delt point lidt ulige, da loukas' svar var lige til at sætte ind på siden.

riishoj:-)
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
Kurser inden for grundlæggende programmering

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