Avatar billede chrisrj Forsker
30. juli 2002 - 17:24 Der er 19 kommentarer og
1 løsning

opdatere med form

Jeg har noget kode der virker. Men når jeg tilpasser det til min side virker det ikke!?!?

Problemet er når man trykker på "ret" knappen skal db'en opdateres og samtidigt bliver brugeren sendt tilbage til en anden side.

jeg bruger denne url: "portal.asp?page=<%=request.servervariables("SCRIPT_NAME")%>"

Og den sender bare brugeren til forsiden!!

her er koden som jeg har rettet til:

<%
'Indsæt denne kode på alle de sider der skal beskyttes...
If Session("Valid") = "" Then
  Response.redirect "password.asp"
End If
%>
<%Dim ID,opslag

id=Request.QueryString("ID")
Const adOpenKeyset = 1
Const adLockOptimistic = 3
Set Connection = Server.CreateObject("ADODB.Connection")
Connection.Open "PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" &

Server.MapPath("../../databaser/database.mdb")

if request.querystring("knap")<>"Ret" then
   
    SQLstringK = "SELECT * FROM aktivitet WHERE id=" & id
    SET opslag = Connection.Execute(SQLstringK)
else
   
    SQLstringK="UPDATE aktivitet SET navn='"&Request.QueryString("navn")&"',

overskrift='"&Request.QueryString("overskrift")&"', tekst='"&Request.QueryString("tekst")&"' WHERE id="&id
    Connection.Execute(SQLstringK)
    response.buffer=true
    response.clear
    response.redirect "portal.asp?page=akt_oversigt.asp"
    response.end
end if
    %>

<head>
<title>.: G L O S T R U P - T E N N I S K L U B - A D M I N I S T R A T I O N :.</title>
<link rel="stylesheet" href="../styles.css" type="text/css">
</head>
<body bgcolor="#FFFFFF" text="#000000" link="#006699" vlink="#006699" alink="#006699">
<p>&nbsp;
<table border="0" width="500" bgcolor="#ffffff" cellspacing="0s" cellpadding="0" align="center">
  <tr>
    <td width="100%" bgcolor="#FFFFFF" valign="top">
      <table width="100%" border="0" cellspacing="0" cellpadding="0">
        <tr bgcolor="#FFFFFF">
          <td width="100%">
        <font size="5">
            <b>
                <font face="Verdana, Arial, Helvetica, sans-serif">
                    Ret aktivitets kalender
                </font>
            </b>
        </font>
      </td>
          <td align="right" valign="bottom" nowrap width="50%">
            <div align="right"></div>
          </td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table border='0' cellspacing='0' cellpadding='0' width='500' align="center" height="19">
  <tr>
    <td width='0' valign='top' bgcolor='#ffffff'><img src="images/intet.gif" width='0'></td>
    <td width='500' valign='top' bgcolor='#ffffff'>
      <table width="100%" border="0" cellspacing="0" cellpadding="0" height="17">
        <tr>
          <td width="50%">
        <font face="Verdana, Arial, Helvetica, sans-serif">
            <b>
                <font size="2">
                    [
                    <a href="../portal.asp">
                                Forsiden
                    </a>
                    |
                    <a href="../aktivitetskalender.asp">
                        Vis Aktivitets kalender
                    </a>
                    |
                    <a href="portal.asp" target="_self">
                        Administrator forside
                    </a>
                    ]
                </font>
            </b>
        </font>
      </td>
        </tr>
      </table>
    </td>
   
  </tr>
</table>
<table border="0" width="500" bgcolor="#ffffff" cellspacing="1" cellpadding="0" align="center">
  <tr>
    <td bgcolor="#FFFFFF" valign="top" colspan="2">
      <div align="center"> <br>
        <%if not opslag.eof then %>
<form method="GET" action="portal.asp?page=<%=request.servervariables("SCRIPT_NAME")%>">
                   
          <table width="400" border="0" cellspacing="1" cellpadding="3" class="bottom" align="center" bgcolor="#f7f7f7">
            <tr>
              <td width="134"><font size="2" face="tahoma">Tilf&oslash;jet af<br>
                <input type="text" name="navn" maxlength="100" class="bottom" value="<%=OPSLAG("navn")%>">
                </font></td>
              <td width="251"><font size="2" face="tahoma">overskrift<span class="rot"><br>
                <input type="text" name="overskrift" maxlength="100" class="bottom" value="<%=OPSLAG("overskrift")%>">
                </span></font></td>
            </tr>
            <tr>
              <td colspan="2" height="167"><font size="2" face="tahoma"> Nyhed<span class="rot"><font color="#FFFFFF">
                </font></span></font><font color="#FF0000" face="tahoma" size="2"><br>
                </font> <font face="tahoma" size="2">
                <textarea name="tekst" cols="50" rows="8" class="bottom"><%=OPSLAG("tekst")%></textarea>
                </font></td>
            </tr>
            <tr>
              <td colspan="2" height="4">
                </span></font></td>
        </tr>
      </table>

<INPUT type="hidden" name="id" value="<%=opslag("id")%>">
<INPUT type="hidden" name="side" value="<%=request.servervariables("SCRIPT_NAME")%>">
              <input type="submit" value="Ret" name="knap">
</form>

<%end if%>
<br>   
  </div>
    </td>
  </tr>
</table>
</body>
Avatar billede eagleeye Praktikant
30. juli 2002 - 17:51 #1
Når du sætte denne ind:

<form method="GET" action="portal.asp?page=<%=request.servervariables("SCRIPT_NAME")%>">

Så indsætte du fil navnet på den fil som koden ligger i, og som jeg lige kan se det så er det filen som man kan rette en bruger i.
Avatar billede chrisrj Forsker
30. juli 2002 - 18:54 #2
Navnet på den fil, som koden ligge i, er "akt_ret.asp"

"portal.asp" er en "ramme" side som kun indeholder include filer med menuer o.lign.
Avatar billede eagleeye Praktikant
30. juli 2002 - 19:07 #3
Efter opdateringen har du en redirect:
response.redirect "portal.asp?page=akt_oversigt.asp"

Den redirecter så til akt_oversigt.asp siden??
Avatar billede chrisrj Forsker
30. juli 2002 - 21:22 #4
mja, den viser "akt_oversigt.asp" i "portal.asp"
Avatar billede eagleeye Praktikant
30. juli 2002 - 21:46 #5
hvis du vil gemme den fil som kalder ret ? så skal det overføres til filen på en eller anden måde, eksvis via QueryString som page=xx.asp

men den page som bliver overført via portal.asp?page=xx.asp er til at fortælle portal.asp hvilken fil den skal vise, hvis jeg forstår det rigtigt.
Avatar billede chrisrj Forsker
30. juli 2002 - 21:50 #6
gemme fil??? jeg skal ikke gemme en fil....

Jeg pinder det lige lidt ud:

Jeg har en form med noget data, som jeg har hentet fra db'en.
Når man så trykker på knappen "Ret" skal indholdet af formen opdatere db'en og brugeren skal sendes hen til oversigts siden.

Jeg håber det er klart nok nu... :-)
Avatar billede eagleeye Praktikant
30. juli 2002 - 21:53 #7
Jeps :) det tror jeg..

men bliver man ikke det ved dette: response.redirect "portal.asp?page=akt_oversigt.asp"
Avatar billede chrisrj Forsker
30. juli 2002 - 21:54 #8
Jo, men den når aldrig så langt!! Den opdatere ikke i db og jeg ved ikke hvorfor!!
Avatar billede eagleeye Praktikant
30. juli 2002 - 22:05 #9
I form tagen står der action=portal.asp?page=<%=request.servervariables("SCRIPT_NAME")%> så sender den form data til portal.asp siden, så spørgsmplet er om data ikke går tabt, prøv at rette denne linie:

<form method="GET" action="portal.asp?page=<%=request.servervariables("SCRIPT_NAME")%>">

til dette så formen sendes direkte til den side som rette data:
<form method="GET" action="<%=request.servervariables("SCRIPT_NAME")%>">
Avatar billede chrisrj Forsker
30. juli 2002 - 22:08 #10
virker ikke.. og den viser heller ikke "akt_oversigt.asp", men default siden
Avatar billede eagleeye Praktikant
30. juli 2002 - 22:24 #11
Prøv når du er ved at rette en ... at højre klikke og vælg view source og se hvilket filnavn som stå i action="xxxx.asp" ??
Avatar billede eagleeye Praktikant
30. juli 2002 - 22:25 #12
Hvis du include filen som retter en bruger så kan  request.servervariables("SCRIPT_NAME")  give filnavnet på den fil som includer filen..
Avatar billede chrisrj Forsker
30. juli 2002 - 22:29 #13
der står bare "portal.asp"

p.s. man retter IKKE en bruger, men et indlæg...
Avatar billede eagleeye Praktikant
30. juli 2002 - 22:33 #14
Så den indsætter navnet på den forkete fil, den skulle indsætte filnavnet på den fil som rette indlæg.

Pørv at rette form tagen:
<form method="GET" action="<%=request.servervariables("SCRIPT_NAME")%>">

til at skrive det rigtige filnavn i action:
<form method="GET" action="ret_indlæg.asp">

Og se om det virker.
Avatar billede chrisrj Forsker
30. juli 2002 - 22:36 #15
nej, heller ikke...
Avatar billede chrisrj Forsker
30. juli 2002 - 22:37 #16
jeg skrev : "portal.asp?page=akt_ret.asp"
Avatar billede eagleeye Praktikant
30. juli 2002 - 22:41 #17
Jeg ved godt det ikke er helt pænt men prøv kun at skrive:
action="akt_ret.asp"
Avatar billede chrisrj Forsker
30. juli 2002 - 22:44 #18
jeg ved ikke hvorfor men... Det virker!!!! 100% !!!

Stort!!

Svar lige, så får du dine velfortjente point.. :-)
Avatar billede eagleeye Praktikant
30. juli 2002 - 22:55 #19
Ok :)

De querystring som bliver send fra formen blev send tgennem portal.asp og så gik de tabt når man blev send vidre til den fil som var angivet i page=....
Avatar billede chrisrj Forsker
30. juli 2002 - 22:57 #20
ja, det må være derfor... takker!!!!
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