Avatar billede bremer Nybegynder
24. februar 2006 - 09:50 Der er 7 kommentarer

Mulighed for at skrive tegn i forms

Hej alle sammen,

Jeg ville høre om der var nogle som kunne hjælpe mig med dette problem, jeg har et lille hjemme bygget cms system, hvor der nogle "text field" når jeg skriver alm. tekst og klikker på min "gem knap" virke det meget fint...

Men jeg hvis jeg så kommer til at skrive et "tegn" fx. ' eller " som kommer der fejl op som siger:

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

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'fornavn ='asdasd'deasd''.

Er der nogle som kan hjælpe her!

Vh- Bremer
Avatar billede goose Nybegynder
24. februar 2006 - 10:14 #1
Når du gemmer er du nød til at replace dine ' ellers kokser det

streng = replace(request.form("formularfelt"), "'", "''")

- altså erstatter jeg en ' med 2 ''

/Goose
Avatar billede bremer Nybegynder
24. februar 2006 - 11:24 #2
Jo, selvfølgelig - men det kokser aligevel, selve om jeg lave ' om til "
Jeg har ikke lige prøvet din løsning endnu... men " laver også problemer....

men når jeg få prøvet din løsning, tror du så jeg kan bruge ' og "
pga. de to tegn ville jeg gerne have mulighed for at bruge....
Avatar billede goose Nybegynder
24. februar 2006 - 11:40 #3
Du burde ikke have nogle problemer med at bruge "-tegnet, det er typisk ' (pling) der er skyld i problemer når du gemmer i databasen. Ved at erstatte 1 pling med 2 plinger burde du være ude over dette problem.

Prøv og send den kode gemmer til databasen, så checker jeg den lige.

/Goose
Avatar billede bremer Nybegynder
24. februar 2006 - 21:56 #4
Her er min kode, er du evt. søde at indsætte den, hvis du har en løsning til dette?`

  <%
Dim tabel1, pw, fejl

fejl = false
tabel1 = Request.Form("tabel1")
tabel2 = Request.Form("tabel2")
tabel3 = Request.Form("tabel3")
tabel4 = Request.Form("tabel4")


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

'Tester om brugernavn findes i databasen
Set rs = Conn.execute ("SELECT * FROM person WHERE tabel1 ='" & tabel1 & "'")

If Not rs.Eof Then
    Response.Write("<p><font color=red>navnet er allerede oprettet! V&aelig;lg venligst et andet navn!</font></p>")
    fejl = true
End If

Conn.Close
Set Conn = Nothing

If tabel1 = "" Then
    Response.Write("<p><font color=red>Indtast venligst et navn!</font></p>")
    fejl = true
End if

'Opretter profil i databasen
If fejl <> true Then
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath ("../../../db/databasen.mdb")
Conn.Open DSN

strSQL = "INSERT INTO person (" &_
       
    "tabel1," &_
    "tabel2, " &_
    "tabel3, " &_
    "tabel4) " &_


    "values('" & tabel1 & "'," &_
    " '" & tabel2 & "'," &_
    " '" & tabel3 & "'," &_
    "'" & tabel4& "')"

Conn.Execute(strSQL)

Conn.Close
Set Conn = Nothing

    Response.Write "<p>posten, " & tabel1 & "! er nu oprettet!</p>"
End If

If fejl = true Then
End If
%>
Avatar billede bremer Nybegynder
27. februar 2006 - 21:44 #5
??
Avatar billede bremer Nybegynder
07. marts 2006 - 19:34 #6
hollo! :)
Avatar billede bremer Nybegynder
17. december 2009 - 19:42 #7
Skriv et svar - de få point...
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