19. august 2001 - 01:14Der er
28 kommentarer og 1 løsning
instr
hvis jeg har en lykke, som køre igennem en database, hvorfor kan jeg så ikke sætte denne her ind mere end engang, for sætter jeg den ind 2 gange så går det galt.. hvorfor???
if instr(rs(\"action\"), \"disconnected\") Then Response.write rs(\"action\") End if
Når du looper igennem som du gør her - 2 gange i det samme loop, så kan ASP jo ikke kende forskel på om det er første eller anden gang. Det er jo samme tekst du kører i gennem.
I en oversat sammenhæng har du jo faktisk spurgt:
1. Hvis der i variablen Action står Disconnected, så skriv variablen ud
2. Hvis der i variablen Action står Disconnected, så skriv variablen ud test
Problemet er jo bare, begge disse klausuler er sande hver gang at ordet \"disconnected\" er der.
Derfor skal du istedet skrive:
Do while not rs.EOF
if instr(rs(\"action\"), \"disconnected\") Then Response.write rs(\"action\") ELSE Response.write rs(\"action\") & \"test\" End if
rs.movenext loop
Thomas.
Synes godt om
Slettet bruger
19. august 2001 - 01:29#8
men nu er der mange andre kommandoer i basen, som ikke skal bruges.. så jeg skal sikre mig om det er:
COMPLETED (vil sige at en person er logget ind)disconnected (vil sige at han er logget ud)
så jeg bagefter kan trække tiderne fra hinanden. :o)
if instr(rs(\"action\"), \"disconnected\") Then Response.write rs(\"action\") ELSE if instr(rs(\"action\"), \"completed\") Then Response.write rs(\"action\") & \"test\" End if End If
rs.movenext loop
Synes godt om
Slettet bruger
19. august 2001 - 01:36#11
lige nu står der:
Do while not rs.EOF
a = server.HTMLEncode(rs(\"action\"))
if instr(a, \"completed\") Then Response.write a & \"test<br>\" ELSE if instr(a, \"disconnected\") Then Response.write a & \"<br>\" End if End If
rs.movenext loop
og ud får jeg kun de actions som er disconnected, og ikke nogle af de andre.. ?? og jeg skulle lave rs(\"action\") om til a ellers så virker det slet ikke
Aaahaaaaaaaah... Okay!.. Så vidt jeg husker, så er instr Case-sensitiv, så prøv med:
Do while not rs.EOF
a = server.HTMLEncode(rs(\"action\"))
if lcase(instr(a, \"completed\")) Then Response.write a & \"test<br>\" ELSE if lcase(instr(a, \"disconnected\")) Then Response.write a & \"<br>\" End if End If
rs.movenext loop
Synes godt om
Slettet bruger
19. august 2001 - 01:54#15
completed er med stort i basen :o).. sorry
Synes godt om
Slettet bruger
19. august 2001 - 01:56#16
og stadig kun disconnected som kommer frem :o)
jeg fatter det ikke.. findes der ikke en service pack til den slags her :o)
if lcase(instr(a, \"completed\")) <> \"0\" Then Response.write a & \"test<br>\" ELSE if lcase(instr(a, \"disconnected\")) <> \"0\" Then Response.write a & \"<br>\" End if End If
rs.movenext loop
Instr returnerer jo et tal, så det er muligt, at den kan lave vrøvl, hvis man ikke lave et numerisk check!
Mvh.
Thomas.
Synes godt om
Slettet bruger
19. august 2001 - 01:58#18
stadig det samme.. :o) hvad så Thomas :o) er du også begyndt at få grå hår? :o) hehe
Nu skulle du meget gerne få nogle tal frem i dit output. Hvis der ikke kommer noget, så er det simpelthen fordi der ikke står \"completed\" nogle steder i dit felt!
Hvis du får nogle tal, så prøv derefter:
Do while not rs.EOF
a = server.HTMLEncode(rs(\"action\"))
if cint(lcase(instr(a, \"completed\"))) <> int(0) Then Response.write a & \"test<br>\" ELSE Response.write a & \"<br>\" End if
rs.movenext loop
Thomas.
Synes godt om
Slettet bruger
19. august 2001 - 02:34#26
hvis jeg skriver COMPLETED med stort så skriver den 10 nogen steder, ellers så skriver den ikke noget..
men sådan her:
Do while not rs.EOF
a = server.HTMLEncode(rs(\"action\"))
if cint(lcase(instr(a, \"COMPLETED\"))) <> int(0) Then Response.write a & \"test<br>\" ELSE Response.write a & \"<br>\" End if
Jamen, selv tak!.. Den var godt nok en smule mystisk, men jeg håber alligevel, at du fik klaret dit problem!. :)
Sov godt, og held og lykke med projektet.
Thomas.
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.