Just nu i M3-nätverket
Gå till innehåll

Omskrivning


lillen_009

Rekommendera Poster

Hur skriver jag om följande:

 

SQL = "SELECT * FROM news WHERE article = " & CInt(Request.QueryString("article"))

 

När article inte är siffror. Detta fungerar för mig om jag har article=siffra men inte om article=bokstav

Länk till kommentar
Dela på andra webbplatser

CInt(Request.QueryString("article")) omvandlar väl strängen till ett numeriskt värde. Om då strängen består av endast bokstäver så blir det numeriska värdet 0.

 

Så om din artikel ID både kan bestå av siffror och bokstäver, så ska du ta bort CInt, antar jag...

 

 

 

Almir - ...

____________________________________________________________

-Läser Programmet för Informatik med Systemvetenskap på MDH, Västerås.-

 

Länk till kommentar
Dela på andra webbplatser

Nej, det funkar inte att bara ta bort cint

 

Då får jag följande msg

 

Microsoft OLE DB Provider for ODBC Drivers fel '80040e10'

 

[Microsoft][Drivrutin för ODBC Microsoft Access] För få parametrar angavs. 1 förväntades.

 

Det funkar om jag kör siffror, men inte bokstäver. Skall man byta ut cinte mot ngt eller ska man lägga till några tecken av ngt slag?

 

SQL = "SELECT * FROM news WHERE article= " & cint(Request.QueryString("article"))

 

 

Länk till kommentar
Dela på andra webbplatser

Vill du jämföra fältet "article" i databasen med en text så måste du ha apostrofer (') runt texten. Av samma anledning som att du har CInt vill du även använda "replace" för att vara säker på att request.querystring("article") inte innehåller någon apostrof.

 

SQL = "SELECT * FROM news WHERE article = [b]'[/b]" & replace(Request.QueryString("article"),"'","") & "[b]'[/b]"

 

Ciao,

Anders

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...