Avatar billede gp Nybegynder
15. februar 2005 - 17:18 Der er 6 kommentarer og
1 løsning

Kan jeg blive på samme side ved opdatering fra form

Jeg har en form der opretter eller ændre min DB, når jeg trykker submit kommer jeg over på min side der skriver til db, kan det laves så det er den samme side jeg bliver på.

Side1.asp::
<!-- #include file="connect.asp" -->
<html>
<body>

<%' SQL forespørgsel
strSQL = "SELECT * from tblProjektData"

Set rs = DataConn.Execute(strSQL)%>

<table border="0" width="760" id="table2" cellspacing="0" cellpadding="0">
    <tr>
        <td rowspan="3" valign="top">
        <table border="0" width="100%" cellspacing="0" cellpadding="0" id="table3">
            <tr>
                <td height="22">Sag:</td>
            </tr>
            <tr>
                <td height="22">Martr.</td>
            </tr>
            <tr>
                <td height="22">Ejer</td>
            </tr>
            <tr>
                <td height="22">Adresse</td>
            </tr>
            <tr>
                <td height="22">&nbsp;</td>
            </tr>
            <tr>
                <td height="22">Post By
        </td>
            </tr>
            <tr>
                <td height="22">&nbsp;</td>
            </tr>
        </table>
        </td>
       
        <td rowspan="3" valign="top">
        <form action="side2.asp" method="get">
            <input type="text" name="sag" size="16" value="<%Response.Write rs("sag") %>"><br>
            <input type="text" name="MatrNr" size="41" value="<%Response.Write rs("MatrNr") %>"><br>
            <input type="text" name="Ejer" size="41" value="<%Response.Write rs("Ejer") %>"><br>
            <input type="text" name="AdresseI" size="41" value="<%Response.Write rs("AdresseI") %>"><br>
            <input type="text" name="AdresseII" size="41" value="<%Response.Write rs("AdresseII") %>"><br>
            <input type="text" name="PostNr" size="8" value="<%Response.Write rs("PostNr") %>">&nbsp;&nbsp;
            <input type="text" name="By" size="30" value="<%Response.Write rs("By_1") %>"><br><br>
            <input type="submit" name="Submit" value="Submit Form">&nbsp;<input type="reset" value="Reset" name="B2"></form>
        </td>
        </tr>
</tabel>       
<%
' Luk databaseforbindelse
DataConn.Close
Set DataConn = Nothing
%>
</body>
</html>

Side2.asp::
<html>
<!-- #include file="connect.asp" -->
<%
Sag = Request.QueryString("Sag")
Ejer = Request.QueryString("Ejer")
MatrNr = Request.QueryString("MatrNr")


If Sag = "" Then
strSQL = "Insert into tblProjektData(Ejer, MatrNr) values('"& Ejer &"','" & MatrNr &"')"
Else
strSQL = "Update tblProjektData SET Ejer='"& Ejer &"',MatrNr='" & MatrNr &"' WHERE Sag = " & Sag
End If
DataConn.Execute(strSQL)
%>
<body>
<%If Sag = "" Then%>
Følgende Sag er blevet indsat:<br>
<%=Sag%><br>
<%=Ejer%><br>
<%=MatrNr%>
<%Else%>
Følgende er blevet Opdateret:<br>
<%=Sag%><br>
<%=Ejer%><br>
<%=MatrNr%>
<%End If%>
</body>
</html>
<%
' Luk databaseforbindelse
DataConn.Close
Set DataConn = Nothing
%>
Avatar billede burningice Nybegynder
15. februar 2005 - 17:23 #1
sagtens... på din side1.asp-side laver du en

If Request.ServerVariables("METHOD") = "POST" Then

' din kode fra side2.asp

Else

' den koden fra side1.asp

End If
Avatar billede eagleeye Praktikant
15. februar 2005 - 17:23 #2
Jo det kan man, du kan så tjekke med Request.Querystring om der er data overført.

Eks på din kode samlet i en:


<!-- #include file="connect.asp" -->
<html>
<body>

<%
if Request.QueryString("Submit") <> "" then
  Sag = Request.QueryString("Sag")
  Ejer = Request.QueryString("Ejer")
  MatrNr = Request.QueryString("MatrNr")
 
  If Sag = "" Then
    strSQL = "Insert into tblProjektData(Ejer, MatrNr) values('"& Ejer &"','" & MatrNr &"')"
  Else
    strSQL = "Update tblProjektData SET Ejer='"& Ejer &"',MatrNr='" & MatrNr &"' WHERE Sag = " & Sag
  End If
  DataConn.Execute(strSQL)
%>
  <%If Sag = "" Then%>
Følgende Sag er blevet indsat:<br>
<%=Sag%><br>
<%=Ejer%><br>
<%=MatrNr%>
<%Else%>
Følgende er blevet Opdateret:<br>
<%=Sag%><br>
<%=Ejer%><br>
<%=MatrNr%>
<%End If%>

<% else %>

<%' SQL forespørgsel
strSQL = "SELECT * from tblProjektData"

Set rs = DataConn.Execute(strSQL)%>

<table border="0" width="760" id="table2" cellspacing="0" cellpadding="0">
    <tr>
        <td rowspan="3" valign="top">
        <table border="0" width="100%" cellspacing="0" cellpadding="0" id="table3">
            <tr>
                <td height="22">Sag:</td>
            </tr>
            <tr>
                <td height="22">Martr.</td>
            </tr>
            <tr>
                <td height="22">Ejer</td>
            </tr>
            <tr>
                <td height="22">Adresse</td>
            </tr>
            <tr>
                <td height="22">&nbsp;</td>
            </tr>
            <tr>
                <td height="22">Post By
        </td>
            </tr>
            <tr>
                <td height="22">&nbsp;</td>
            </tr>
        </table>
        </td>
       
        <td rowspan="3" valign="top">
        <form action="side2.asp" method="get">
            <input type="text" name="sag" size="16" value="<%Response.Write rs("sag") %>"><br>
            <input type="text" name="MatrNr" size="41" value="<%Response.Write rs("MatrNr") %>"><br>
            <input type="text" name="Ejer" size="41" value="<%Response.Write rs("Ejer") %>"><br>
            <input type="text" name="AdresseI" size="41" value="<%Response.Write rs("AdresseI") %>"><br>
            <input type="text" name="AdresseII" size="41" value="<%Response.Write rs("AdresseII") %>"><br>
            <input type="text" name="PostNr" size="8" value="<%Response.Write rs("PostNr") %>">&nbsp;&nbsp;
            <input type="text" name="By" size="30" value="<%Response.Write rs("By_1") %>"><br><br>
            <input type="submit" name="Submit" value="Submit Form">&nbsp;<input type="reset" value="Reset" name="B2"></form>
        </td>
        </tr>
</tabel>       
<%
End if
' Luk databaseforbindelse
DataConn.Close
Set DataConn = Nothing

%>
</body>
</html>
Avatar billede gp Nybegynder
15. februar 2005 - 17:29 #3
Okey; men nu vil jeg ikke have
<%If Sag = "" Then%>
Følgende Sag er blevet indsat:<br>
<%=Sag%><br>
<%=Ejer%><br>
<%=MatrNr%>
<%Else%>
Følgende er blevet Opdateret:<br>
<%=Sag%><br>
<%=Ejer%><br>
<%=MatrNr%>
<%End If%>
med
Men istedet min form som er bliver opdateret
Avatar billede gp Nybegynder
15. februar 2005 - 17:32 #4
Men her bliver jeg jo stillet vidre til side2.asp

        <td rowspan="3" valign="top">
        <form action="side2.asp" method="get">
            <input type="text" name="sag" size

Hvad skal jeg så skrive her
Avatar billede eagleeye Praktikant
15. februar 2005 - 18:17 #5
når ja :) Form tagen skaljo lige rettes til så den ikke sender til side2 men side1:
Så prøv at rette:
<form action="side2.asp" method="get">

Til dtte:

<form action="side1.asp" method="get">
Avatar billede gp Nybegynder
15. februar 2005 - 18:22 #6
Eagleeye;
Hvad sker der hvis Form er lig <form action="" method="get"> . Og hvis jeg har flere submit knapper?

Sender du også et svar...  Tak Tak
Avatar billede eagleeye Praktikant
15. februar 2005 - 18:28 #7
Den form action du har vist virker også med at sende formen til samme side.

Den submit knaps value som overføres er den som man trykker på.

Du kan også skifte method fra get til post så kan du tjekke om formen er sendt til siden med:
if Request.ServerVariables("METHOD") = "POST" then

men så skal alle request.querystring("xx") rettes til request.form("xx")
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