Avatar billede tahoo Nybegynder
29. april 2002 - 01:38 Der er 2 kommentarer og
2 løsninger

form + update i database

Er der ikke en som hurtig kan smide noget komplet kode op til mig.

Det skulle bare kunne rette i en Acess database, hvor den rette med det som jeg har skrevet i min form.

Ønsket :
skal kunne virke ud fra ID, altså fx. http://adr.dk?id=45
En "form fil" + en "ret fil" i databasen. + når jeg trykker submit skal den fx. gå ind på linket www.jubii.dk
Avatar billede larsen1 Nybegynder
29. april 2002 - 08:56 #1
Det her skulle du kunne bruge til dit formål. Du skal selvfølgelig selv rette databasenavn, tabelnavn, tabelfeltnavne og form-elementnavne.
Dem kan jeg jo ikke gætte herfra.

<%@ Language=VBScript %>

<%

vPath = "databasenavn.mdb"
pPath = Server.MapPath( vPath )
ConString = "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & pPath & ";" & "JET OLEDB:Database Password="

p_id = request("id")

              str1 = request("feltnavn1")
              str2 = request("feltnavn2")
              str3 = request("feltnavn3")
              str4 = request("feltnavn4")

strSQL = "UPDATE tbltabelnavn SET "
strSQL = strSQL & "feltnavn1='" & str1 & "'"
strSQL = strSQL & ", feltnavn2 ='" & str2 & "'"
strSQL = strSQL & ", feltnavn3 ='" & str3 & "'"
strSQL = strSQL & ", feltnavn4 ='" & str4 & "'"

strSQL = strSQL & " WHERE feltid=" & p_id

        set adoCon = Server.CreateObject("ADODB.Connection")
        adoCon.open(ConString)
           
adoCon.Execute(strSQL)
       
Set adoCon = Nothing

response.redirect("thankyoupage.asp")

/simon
Avatar billede kotelet Nybegynder
29. april 2002 - 17:04 #2
HER er begge filer. Både den med form og den med ASP-script i een... Hvis det er meget nødvendigt kan jeg dele det op i to filer for dig alligevel :-)



<html>
<head>
<title>Min form og mit ASP-script</title>
</head>

<body bgcolor="#FFFFFF" text="#000000">

<%

IF request.form("submit") <> "" THEN

str1 = request.form("text1")
str2 = request.form("text2")
str3 = request.form("text3")
str4 = request.form("text4")

strSQL = "UPDATE tabel SET "

strSQL = strSQL & "text1='" & str1 & "'"
strSQL = strSQL & ", text2 ='" & str2 & "'"
strSQL = strSQL & ", text3 ='" & str3 & "'"
strSQL = strSQL & ", text4 ='" & str4 & "'"

strSQL = strSQL & " WHERE id=" & request.querystring("id")

Conn.Execute(strSQL)

response.redirect "http://www.jubii.dk"

ELSE

set rs = Conn.Execute("Select * from tabel where id = " & request("id"))
%>

<form name="form1" method="post" action="dennefil.asp?id=<% = rs("id") %>">
  <p>
    <input type="text" name="text1" value="<% =rs("text1")  %>">
  </p>
  <p>
    <input type="text" name="text2" value="<% =rs("text3")  %>">
  </p>
  <p>
    <input type="text" name="text3" value="<% =rs("text3")  %>">
  </p>
  <p>
    <input type="text" name="text4" value="<% =rs("text4")  %>">
  </p>
  <p>
    <input type="submit" name="Submit" value="Rediger">
  </p>
</form>

<% END IF %>
</body>
</html>
Avatar billede tahoo Nybegynder
29. april 2002 - 21:21 #3
Den skal tilslutte til en database dom hedder : database.mdb (Ligger i samme bib)

gider du dele den op i 2 filer, en form.asp + modtage.asp --> så er du / i super :-)
Avatar billede kotelet Nybegynder
02. maj 2002 - 13:36 #4
----------- FORM.ASP -----------------

<html>
<head>
<title>Min form</title>
</head>

<body bgcolor="#FFFFFF" text="#000000">

<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("database.mdb")
Conn.Open DSN
set rs = Conn.Execute("Select * from tabel where id = " & request("id"))

%>

<form name="form" method="post" action="MODTAGE.asp?id=<% = rs("id") %>">
  <p>
    <input type="text" name="text1" value="<% =rs("text1")  %>">
  </p>
  <p>
    <input type="text" name="text2" value="<% =rs("text3")  %>">
  </p>
  <p>
    <input type="text" name="text3" value="<% =rs("text3")  %>">
  </p>
  <p>
    <input type="text" name="text4" value="<% =rs("text4")  %>">
  </p>
  <p>
    <input type="submit" name="Submit" value="Rediger">
  </p>
</form>

<%
Conn.CLose
Set Conn = Nothing
%>
</body>
</html>

-------- SLUT PÅ FORM.ASP -------------


-------- MODTAGE.ASP ----------------

<%
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("database.mdb")
Conn.Open DSN

IF request.form("submit") <> "" THEN

str1 = request.form("text1")
str2 = request.form("text2")
str3 = request.form("text3")
str4 = request.form("text4")

strSQL = "UPDATE tabel SET "

strSQL = strSQL & "text1='" & str1 & "'"
strSQL = strSQL & ", text2 ='" & str2 & "'"
strSQL = strSQL & ", text3 ='" & str3 & "'"
strSQL = strSQL & ", text4 ='" & str4 & "'"

strSQL = strSQL & " WHERE id=" & request.querystring("id")

Conn.Execute(strSQL)
Conn.Close
Set Conn = nothing
response.redirect "http://www.jubii.dk"
ELSE
Conn.CLose
Set Conn = Nothing
response.redirect "FORM.asp"
END IF

-------- SLUT PÅ MODTAGE.ASP ---------------


Jeg antager at du kalder FORM.asp med et id på den post du vil redigere. På den måde kan du i dine form felter allerede se hvad der står i forvejen og så ved MODTAGE.ASP hvilken post det egentlig er den skal opdatere...

Håber du får det til at fungere :-)

/Kotelet
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