Just nu i M3-nätverket
Jump to content

Omskrivning


lillen_009

Recommended Posts

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

Link to comment
Share on other sites

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.-

 

Link to comment
Share on other sites

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"))

 

 

Link to comment
Share on other sites

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

 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.



×
×
  • Create New...