Avatar billede ferdinan Nybegynder
09. februar 2002 - 19:09 Der er 2 kommentarer og
1 løsning

Tjekke om tal er i streng

Jeg bruger følgende til at tjekke om et eller flere tal er i streng, for så kune at udskrive poster fra en tabel der matcher talene i strengen?


userSQL = "SELECT * FROM TeventUser WHERE ID = " & request("ID")
Set RS = myConn.Execute(userSQL)
VarAreaID=RS("AreaID")
'f.eks 2, 5, 6, 14, 23

strSQL = "SELECT * FROM TeventArea ORDER BY AreaName"
Set eRS = myConn.Execute(strSQL)
WHILE NOT eRS.EOF
if instr(1, VarAreaID, CStr(eRS("AreaID"))) then %>
<option value="<%=eRS("AreaID")%>" selected><%=eRS("AreaName")%></option>
<%end if
end if
eRS.MoveNext
WEND

Den skal så kun udskrive poster fra TeventArea som matcher VarAreaID strengen..... det går også indtil 9 så søger den jo kun efter 1 tal....hvordan sikre jeg at hvis 14 er i strengen, så vælges 1 og 4 ikke?


ferdinan
Avatar billede devman Nybegynder
09. februar 2002 - 19:54 #1
Du kan vælge på..
nLen = len(request("ID"))

SELECT * FROM TeventUser WHERE ID = " & request("ID") & " and len(ID) = " & nlen
Avatar billede ferdinan Nybegynder
10. februar 2002 - 16:21 #2
Den skal forståe således:

VarAreaID="2, 5, 6, 14, 23"

strSQL = "SELECT * FROM TeventArea WHERE AreaID = "ER INDEHOLDENDE I VarAreaID"


ferdinan
Avatar billede coltau Juniormester
11. februar 2002 - 19:58 #3
Prøv at teste nedenstående, som kan lave det hele i en where-sætning:

<%
SQL = ""
Cmd = "1,2,4,12,15,17"
S = Split(Cmd, ",")

for Each Item in S
  if SQL <> "" then
    SQL = SQL & " or areaid=" & Item
  else
    SQL = " areaid=" & Item
  end if
next

if SQL <> "" then
  SQL = "where (id=" & request("ID") & ") and (" & SQL & ")"
else
  SQL = "where (id=" & request("ID")
end if

Response.Write(SQL)
%>

Dit udtræk indeholder så kun de poster hvor areaid er korrekt.
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