30. juli 2004 - 18:05Der er
21 kommentarer og 1 løsning
Fejl ved brug af ' i formular
Hey folkens :)
Jeg har et lille problem jeg håber i kan hjælpe mig med...
Jeg har lavet et nyhedssystem hvor man kan tilføje og redigere nyheder, og det virker egentlig fint, med mindre der bliver skrevet en nyhed med tegnet ' ... Det er selvfølgelig fordi den bliver brugt i ASP koden også, men hvordan kan jeg få den til at se forskel?
Fejlen er:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression ''Tekst med ' i indholdet'.
Min pointe var egentlig bare, at holde det ensformigt. I stedet for at benytte flere metoder til at beskytte mod injektion, så universalt bruge Replace(var, "'", "''")
Ved oprettelse af bruger, vil man så kontrollere navnet. Lidt surt at oprette sig som "polle's verden" med password "far's dyt", hvis det ikke kan bruges til at logge ind med.. (og password må da gerne indeholde ')
Når jeg ikke tillader ' tegnet, validerer jeg selvfølgelig inputtet fra brugeren :-) Jeg gemmer aldrig data direkte i databasen, uden at vide hvad det er :-)
Det der med ensformighed. Når jeg koder, laver jeg specielle funktioner til at håndtere alt input fra brugeren.
Hvis jeg skulle bruge din metode, skulle jeg kode en ekstra funktion specielt til login. Det var blot det jeg studsede over. Hvis du alligevel har kontrolleret input ved oprettelse, sker der jo ikke noget ved at bruge 1x > 2x metoden ved login også.
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.