Avatar billede 4262sandved Nybegynder
13. juli 2006 - 20:13 Der er 5 kommentarer og
2 løsninger

Hjælp til ret funktion

Denne her virker ikke:

<%
nr = Request.Querystring("nr")
nr = Replace(nr, "(", " ")
nr = Replace(nr, ")", " ")
nr = Replace(nr, "'", "''")
nr = Replace(nr, "%", " ")
nr = Replace(nr, ";", " ")
navn = Request.Form("navn")
navn = Replace(navn, "'", "''")
menu = Request.Form("menu")
menu = Replace(menu, "'", "''")
tekst = Request.Form("tekst")
tekst = Replace(tekst, "'", "''")
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("../../db/michaela.mdb")
Conn.Open DSN
strSQL = "Update sider set "
strSQL = strSQL & "navn= '"&navn&"', "
strSQL = strSQL & "menu= '"&menu&"', "
strSQL = strSQL & "tekst= '"&tekst&"' "
strSQL = strSQL & " Where nr = '&nr&'"
Conn.Execute(strSQL)
Conn.Close
Set Conn = Nothing
Response.Redirect "rediger_side.asp"
%>

Den gir følgene fejl:::

Microsoft OLE DB Provider for ODBC Drivers error '80040e07'

[Microsoft][ODBC Microsoft Access Driver] Data type mismatch in criteria expression.

/administration/ret_side.asp, line 23


den der løser det, for 30 point med det samme
Avatar billede keysersoze Ekspert
13. juli 2006 - 20:25 #1
strSQL = "Update sider set "
strSQL = strSQL & "navn= '"&navn&"', "
strSQL = strSQL & "menu= '"&menu&"', "
strSQL = strSQL & "tekst= '"&tekst&"' "
strSQL = strSQL & " Where nr = "&nr&""

alternativt så prøv at udskrive din sql og se hvad det giver af resultat;

Response.Write strSQL
response.end
Conn.Execute(strSQL)
Avatar billede nielle Nybegynder
13. juli 2006 - 20:30 #2
Det er ikke så godt at du har mellemrum med i et felt som er forbeholdt tal.

Ret til:

nr = Request.Querystring("nr")
nr = Replace(nr, "(", "")
nr = Replace(nr, ")", "")
nr = Replace(nr, "'", "")
nr = Replace(nr, "%", "")
nr = Replace(nr, ";", "")

- og til:

strSQL = "Update sider set "
strSQL = strSQL & "navn= '"&navn&"', "
strSQL = strSQL & "menu= '"&menu&"', "
strSQL = strSQL & "tekst= '"&tekst&"' "
strSQL = strSQL & " Where nr = " & nr
Avatar billede 4262sandved Nybegynder
13. juli 2006 - 20:45 #3
Nu virker det...

Den redigere bare ikke feltet "tekst"

ret_side.asp:
<%
if session("mi") = "" Then
Response.redirect "../default.asp"
end if
%>
<%
nr = Request.Querystring("nr")
nr = Replace(nr, "(", "")
nr = Replace(nr, ")", "")
nr = Replace(nr, "'", "")
nr = Replace(nr, "%", "")
nr = Replace(nr, ";", "")
navn = Request.Form("navn")
navn = Replace(navn, "'", "''")
menu = Request.Form("menu")
menu = Replace(menu, "'", "''")
tekst = Request.Form("tekst")
tekst = Replace(tekst, "'", "''")
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("../../db/michaela.mdb")
Conn.Open DSN
strSQL = "Update sider set "
strSQL = strSQL & "navn= '"&navn&"', "
strSQL = strSQL & "menu= '"&menu&"', "
strSQL = strSQL & "tekst= '"&tekst&"' "
strSQL = strSQL & " Where nr = " & nr
Conn.Execute(strSQL)
Conn.Close
Set Conn = Nothing
Response.Redirect "rediger_side.asp?nr="&nr&""
%>

rediger_side.asp:

<form method="post" action="ret_side.asp?nr=<%Response.Write Server.HTMLEncode("" & rs("nr") & "")%>">
<b>Navn:</b><br>
<input type="text" value="<%Response.Write Server.HTMLEncode("" & rs("navn") & "")%>" name="navn" id="f">
<br><br>
<b>Vis i menu?</b><br>
<select name="menu" size="2" id="f">
<% if rs("menu") = "Ja" Then %>
<option selected>Ja</option>
<option>Nej</option>
<% else %>
<option>Ja</option>
<option selected>Nej</option>
<% end if %>
</select>
<br><br>
<b>Tekst</b><br>
<textarea name="tekst" value="<%Response.Write Server.HTMLEncode("" & rs("tekst") & "")%>" rows="21" cols="64"></textarea>
<br><br>
<input type="submit" name="submit" value="Opret" id="s">
</form>
Avatar billede 4262sandved Nybegynder
13. juli 2006 - 20:54 #4
Yes ;) fik lige rettet det ved hjælp af Microsoft Frontpage...

Men i får alligevel point - 15 vær fordi i har hjulpet, men ikke løst problemet helt.

er det godt nok?

læg svar
Avatar billede nielle Nybegynder
13. juli 2006 - 20:55 #5
Fint :^)
Avatar billede keysersoze Ekspert
13. juli 2006 - 21:11 #6
svar :)
Avatar billede 4262sandved Nybegynder
13. juli 2006 - 22:44 #7
Point er givet  -  tråd lukket  -  tak for hjælpen :-)
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