/ Forside/ Teknologi / Udvikling / ASP / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Opdater databse gennem formel
Fra : Kaa.eL.Haa
Vist : 640 gange
70 point
Dato : 24-03-04 21:19

Jeg har et problem med og opdatere en database gennem en formel.

Jeg ved ikke hvordan jeg skal skrive den fil som data'ne på formlen bliver posted til.

Her er et klip fra formlen:
----KLIP
<%
do until rs.Eof
response.write "<tr><td><center><b>"
response.write rs("objekt")
response.write "</b><br></td>"
response.write "<td><center><input type='radio' value='2' name='" & rs("objekt") & "'"
if rs("status") = "2" then
response.write "checked></td>"
else
response.write "></td>"
End If
response.write "<td><center><input type='radio' value='1' name='" & rs("objekt") & "'"
if rs("status") = "1" then
response.write "checked></td>"
else
response.write "></td>"
End If
response.write "<td><center><input type='radio' value='0' name='" & rs("objekt") & "'"
if rs("status") = "0" then
response.write "checked></td>"
else
response.write "></td>"
End If
response.write "</tr>"
rs.movenext
loop
%>
---/KLIP

Jeg poster som sagt de data jeg ændrer i den formel til en fil som foreløbigt hedder "update.asp", men hvordan skal jeg få den til og opdatere data'ne eller kan man opdatere dem direkte fra formularen??

Jeg håber en venlig sjæl vil hjælpe mig

//KLH


Ps: Jeg er KUN en freelance programmør... så skriv som om jeg er et barn på 10...

 
 
Kommentar
Fra : BoJohansen


Dato : 24-03-04 21:21
Kommentar
Fra : Kaa.eL.Haa


Dato : 24-03-04 21:26

Det har jeg prøvet... Men jeg ved ikke hvad det er for nogle "navne" den skal hente..?!?

Der er 129 indtil videre...

Kommentar
Fra : BoJohansen


Dato : 24-03-04 21:36

Du skal opdater EN persons navn, rigtigt?



Kommentar
Fra : BoJohansen


Dato : 24-03-04 21:37

altså jeg mener om du skal opdatere EN persons data i databasen.

Kommentar
Fra : Kaa.eL.Haa


Dato : 25-03-04 08:07

hmm... nej....

Jeg skal opdatere status for et objekt..

f.x.:
Ibrug = 2
Karantæne = 1
Slettet = 0

Kommentar
Fra : Kaa.eL.Haa


Dato : 25-03-04 08:08

via. alternativ knapper...

Kommentar
Fra : BoJohansen


Dato : 26-03-04 23:46

Ja ok, men er det da 1 objekt ad gangen eller har du feks. 500 objekter med 3 værdier hver som du vil opdatere samtidigt når du submitter formen.

Object 1
Ibrug = 2
Karantæne = 1
Slettet = 0

Object 2
Ibrug = 5
Karantæne = 4
Slettet = 0

Object 3
Ibrug = 22
Karantæne = 12
Slettet = 02

osv. osv.

Kommentar
Fra : Kaa.eL.Haa


Dato : 27-03-04 09:28

Det er ca. 130 objekter.

Accepteret svar
Fra : BoJohansen

Modtaget 70 point
Dato : 27-03-04 16:44

Det er en lidt beskidt måde at gøre det på, men det fungere (Er kun hobby proggramør )

http://www.bojohansen.dk/kd/36573/

default.asp :

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>&AElig;ndringer</title>
</head>

<body>

<%
'Først laver vi en database forbindelse
Set Conn = Server.CreateObject("ADODB.Connection")
   Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & Server.Mappath ("/") & "\..\db\kandu.mdb"
   
'Så laver vi et Recordset til at hente vores data
   Set Rs = Conn.Execute("SELECT * FROM 36573")

%>
<!-- Vi skal nu have lavet en Form til at putte alle data ind i -->
<!-- Vi sætter Form Action til "POST" for at sikre at vi ikke oveskride grænsen for datamængde i Querystringen "GET" -->
<form action="/kd/36573/gem_endringer.asp" method="post" name="endringer" id="endringer">

<!-- Vi laver et LOOP for at vise alle Records i databasen -->
<% do until rs.Eof %>
<p>Id =
<% = Rs("Id") %>
</p>
<p>
<!--Bemærk at vi sætte Id fra databasen ind foran hver Radio Button's navn,
   hvis vi ikke gør det vil det crashe i HTML'en da vi jo laver et loop og gentager de samme radio button's igen og igen.
   Og det gør at vi kan identificere dem igen når vi skal til at opdatere vores database-->
No1 = 1 <input name="<%= Rs("Id") %>-No1" type="radio" value="1"<% If Rs("No1") = "1" Then %> checked> <% Else %> > <%End If %>
       2 <input name="<%= Rs("Id") %>-No1" type="radio" value="2"<% If Rs("No1") = "2" Then %> checked> <% Else %> > <%End If %>
</p>
<p>No2 = 1 <input name="<%= Rs("Id") %>-No2" type="radio" value="1"<% If Rs("No2") = "1" Then %> checked>
<% Else %> > <%End If %>
       2 <input name="<%= Rs("Id") %>-No2" type="radio" value="2"<% If Rs("No2") = "2" Then %> checked>
       <% Else %> > <%End If %>
</p>
<p>No3 = 1 <input name="<%= Rs("Id") %>-No3" type="radio" value="1"<% If Rs("No3") = "1" Then %> checked>
<% Else %> > <%End If %>
       2 <input name="<%= Rs("Id") %>-No3" type="radio" value="2"<% If Rs("No3") = "2" Then %> checked>
       <% Else %> > <%End If %>
</p>
<p>No4 = 1 <input name="<%= Rs("Id") %>-No4" type="radio" value="1"<% If Rs("No4") = "1" Then %> checked> <% Else %> > <%End If %>
       2 <input name="<%= Rs("Id") %>-No4" type="radio" value="2"<% If Rs("No4") = "2" Then %> checked> <% Else %> > <%End If %>
</p>
<hr>
<p>
<%
rs.movenext
loop

'Luk Rs og Conn
Rs.Close()
Set Rs = Nothing
Conn.Close
Set Conn = Nothing
%>
</p>
<p>
<input type="submit" name="Submit" value="Gem ændringer">
</p>
</form>
</body>
</html>


gem_endringer.asp :

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>

<%
'Først laver vi en database connection
Set Conn = Server.CreateObject("ADODB.Connection")
   Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & Server.Mappath ("/") & "\..\db\kandu.mdb"

'Så skal vi have fat i vores data fra forrige side
For each object in Request.Form

'Da submit knappen postes med skal vi lige sortere den fra
   If Object = "Submit" Then
   'Gør ingenting
   Else
      'Vi er nød til at finde Id og Radio Button navn for hvert object, dette gøres ved at dele Object ved "-" som du jo husker
      'satte vi Id foran vores Radio Button's navn. Med spilt får vi 0=Id og 1=Radio button Navn
      SplitObject = Split(Object, "-", 2)
      
      'Så laver vi vores SQL streng
      strSQL = "Update 36573 set " & SplitObject(1) & " = '" & Request.Form (""& Object &"") & "' Where Id = " & SplitObject(0) & ""
      Conn.Execute(strSQL)
      
   End IF
Next

'Luk Conn
Conn.Close
Set Conn = Nothing

'Diriger tilbage til default så vi kan se ændringerne
Response.Redirect("/kd/36573/default.asp")

%>


Godkendelse af svar
Fra : Kaa.eL.Haa


Dato : 28-03-04 17:55

Tak for svaret BoJohansen.


Jeg er dig meget taknemmelig for det stykke arbejde, som jeg ikke kunne finde ud af blev lavet for mig! Tak for det.


btw.: Najs design du har på din hp

//KLH


Du har følgende muligheder
Eftersom du ikke er logget ind i systemet, kan du ikke skrive et indlæg til dette spørgsmål.

Hvis du ikke allerede er registreret, kan du gratis blive medlem, ved at trykke på "Bliv medlem" ude i menuen.
Søg
Reklame
Statistik
Spørgsmål : 177577
Tips : 31968
Nyheder : 719565
Indlæg : 6409071
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste