Avatar billede thaman65 Nybegynder
21. marts 2002 - 12:33 Der er 5 kommentarer og
1 løsning

Opdatering af 3 text strenge uden begrænsning

Jeg sidder og arbejder med en side der skal kunne opdateres ved hjælp af asp. Skal jeg bruge en database eller er det nemmere at bruge txt filer til dette? Forslag til kode ville være rart :-)
Jeg er ikke ligefrem ekspert på asp området men jeg har fået stykket noget kode sammen, dog virker det ikke :-)

Hvad er det jeg gør forkert?

<%
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../db/nyheder.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open strDSN
%>
<%
sql = "SELECT * FROM Nyhed ORDER BY Id DESC"
Set Rs = Conn.Execute (sql)
%>


<%
sql ="SELECT * FROM Nyhed Where Id=" & Request.Querystring("ID")
Set Rs = Conn.Execute(sql)
%>
<html>
<head>
<title>Ret text</title>
</head>

<body bgcolor="#FFFFFF" text="#000000" background="Billeder/blue014.jpg">
<form name="form2" method="post" form action="ret.asp?id=<%=Rs("Id")%>">
  <p><strong>Textupdate:<br>
    </strong>
  <td valign="middle" align="left">&nbsp; </td>
  <tr>
    <td valign="middle" align="left" colspan="2">
      <p>
        <textarea rows="20" name="text1" cols="45" value="<%Rs("1")%>" size="20"><%=strtext1%></textarea>
        <strong><font face="verdana" size="2">
        <textarea rows="20" name="text2" cols="45" value="<%=Rs("2")%>" size="20"><%=strtext2%></textarea>
        <textarea rows="20" name="text3" cols="45" value="<%=Rs("3")%>" size="20"><%=strtext3%></textarea>
        </font></strong>
      <p><font face="Arial" size="3">
    <input type="submit" name="Submit" value="Ret">
    </font> </p>
</form>
<br>
<a href="login.asp">Tilbage</a><br>
</body>
</html>
Avatar billede thaman65 Nybegynder
21. marts 2002 - 12:34 #1
Der er selvfølgelig også en ret.asp

<% response.buffer = true %>

<%
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("../db/nyheder.mdb")
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open strDSN
%>

<%
sql = "UPDATE Nyhed SET Dato = '" & request.form("Dato") & "'"
sql = sql & ", text1= '" & request.form("1") &"'"
sql = sql & ", text2= '" & request.form("2") &"'"
sql = sql & ", text3= '" & request.form("3") &"'"
sql = sql & "WHERE Id = " & request("Id")
Set rs = Conn.Execute (sql)
Conn.Close
%>

<% response.redirect ("login.asp")%>
Avatar billede thaman65 Nybegynder
21. marts 2002 - 12:34 #2
Login virker fint nok
Avatar billede soes Nybegynder
21. marts 2002 - 17:01 #3
Uhhh, der er noget som kan fjernes.
Dette kan fjernes:
<%
sql = "SELECT * FROM Nyhed ORDER BY Id DESC"
Set Rs = Conn.Execute (sql)
%>
da det er et bestemt recordset du ønsker at trække ud. Du siger ikke hvor det er fejlen opstår og på hvilken side det går galt (linie nummer ville være rart)

På ret.asp kan du skrive følgende linie om, herved får du din kode optimeret en smule.
Set rs = Conn.Execute (sql) til Conn.Execute(sql)

Hvis du vil nævne siden det går galt på vil det være fint.
/Søren Søndergård
Avatar billede thaman65 Nybegynder
21. marts 2002 - 18:52 #4
Det sjove er at der ikke rigtig sker noget :-). Jeg har en mistanke om at det er de textareas det går galt med men jeg er ikke sikker
Avatar billede thaman65 Nybegynder
21. marts 2002 - 18:53 #5
Er der måske en nemmere måde at lave dette på?
Avatar billede soes Nybegynder
22. marts 2002 - 10:15 #6
nej, men jeg tror at fejlen ligger i når du henter dataen igen. du skriver request.form("1") men du har navngivet dit textarea med text1 2 3, prøv at ændre din request.form til de rigtige navne.

/Søren Søndergård
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