Man kan skam også gøre det som crunch skriver. Men hvis Request.Form("strTitle") er tom, er værdien så ikke null? En null-værdi kan man jo ikke lave replace på.
Når du skriver det ikke virker, ville det være MEGET rart med en beskrivelse af hvad der ikke virker. Bliver teksten ikke erstattet, eller får du en fejlmeddelelse (og i så fald hvilken).
ups. I har vist ret med hensyn til at jeg skulle specificere lidt nærmere. Men altså jeg fik det til at virke, men ikke optimalt. Altså:
Dim objConn As New OleDbConnection(strConn) Dim strSQL As String = "UPDATE tbl SET strTitle = '" + Replace(Request("txtTitle"), "'", "''") + "' WHERE id=" + Id + ";" Dim objCmd As New OleDbCommand(strSQL, objConn) objConn.Open() objCmd.ExecuteNonQuery() objConn.Close()
vil kunne escape en enkelt ' men hvis jeg f.eks. laver 3 lige ved siden af hinanden som ''' går det helt i ged, efter et par gange..
Crunch: lige et par kommentarer på sidelinjen... Hvorfor kalder du ikke tekstbox-objektets text-property istedet for request-objektet? (dvs. (txtTitle.Text). Eller du bruger måske ikke postback? I så fald ville jeg anbefale dig at gøre dette, da det giver en masse spændende muligheder. Derudover er det heller ingen dårlig idé at trimme brugerinputs så du slipper for start og slut-mellemrum: Trim(Request("txtTitle"))
Derudover kan jeg ikke forstå hvorfor tre apostroffer skulle give problemer. Dette skulle blot medføre at der bliver dannet 6 apostroffer.
Synes godt om
Ny brugerNybegynder
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.