Avatar billede gr8m8 Novice
12. april 2003 - 16:30 Der er 9 kommentarer og
1 løsning

If , Then, Else problem....

Hej folkens,

jeg er igang med at lave en member side til en Counter-Strike klan og da klanen består af 3 hold, skal disse deles op under member siden og det ville jeg gøre med en If Then Else, men den virker sq ikke helt og så er det jo i kommer ind i billedet :)

Min ide ser sådan ud :

<%
' Databaseforbindelse - husk at angive sti til din database
Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath("members.mdb")
Conn.Open DSN

' SQL forespørgsel
strSQL = "Select * From members Order by ID"

' Udfør forespørgsel (rs indeholder nu resultatet)
Set rs = Conn.Execute(strSQL)

%>
<table width="450" border="0" cellpadding="2" cellspacing="0" align="center">
  <tr>
    <td width="113">
      <div align="center"><font face="Tahoma" size="2" color="#0099CC"><b>Nickname</b></font></div>
    </td>
    <td width="113">
      <div align="center"><font face="Tahoma" size="2" color="#0099CC"><b>Function</b></font></div>
    </td>
    <td width="50">
      <div align="center"><font face="Tahoma" size="2" color="#0099CC"><b>Active</b></font></div>
    </td>
    <td width="50">
      <div align="center"><font face="Tahoma" size="2" color="#0099CC"><b>Details</b></font></div>
    </td>
  </tr>
<%

' Gennemløb Recordset (rs) med en løkke
Do

%>
  <tr>
    <td width="113"> <font face="Tahoma" size="2">
<%
    If strSQL = "Select * From members = 1" Then
        Response.Write rs("nick")
    Else
        rs.MoveNext
    End If
%>
      </font></td>
    <td width="113">
      <div align="center"><font face="Tahoma" size="2">
        <%Response.Write rs("funktion")%>
        </font></div>
    </td>
    <td width="50">
      <div align="center"><font face="Tahoma" size="2" color="#006600">
        <%Response.Write rs("aktiv")%>
        </font></div>
    </td>
    <td width="50">
      <div align="center"><font face="Tahoma" size="2"><a href="memberpage.asp?id=<%= rs("id")%>"><img src="../images/details.jpg" width="17" height="17" border="0"></a></font></div>
    </td>

<%
    rs.MoveNext

    Loop While Not rs.EOF
%>
  </tr>
</table>

Men det virker som sagt ikke og det er der 110% sikkert en god grund til :D Så ik dril jeg er stadig ny idenfor faget ;)

På forhånd tak !
Avatar billede gr8m8 Novice
12. april 2003 - 16:39 #1
Jeg er villig til at smide flere point i hvis det skulle lokke noget mere hos nogen !
Avatar billede michael007.dk Nybegynder
12. april 2003 - 16:49 #2
If strSQL = "Select * From members = 1" Then
skal laves om til
If rs("members") = 1 Then

Tror det hælper
Avatar billede Jman Praktikant
12. april 2003 - 16:52 #3
Du skal lave en if/then for hver klan. Hvis vi går ud fra du sorterer efter "member":

IF rs("member") = 1 THEN
.. og så response.write for hver enkelt kolonne i tabellen
ELSEIF rs("member") = 2 THEN
.. og så response.write for hver enkelt kolonne i tabellen
ELSE
.. og så response.write for hver enkelt kolonne i tabellen
END IF
Avatar billede gr8m8 Novice
13. april 2003 - 11:11 #4
Hmm... jeg kan ikke rigtig se mig ud af hvordan jeg skal få det til at virke med det i har skrevet, desværre :/
Avatar billede michael007.dk Nybegynder
13. april 2003 - 11:39 #5
Hvad sker der hvis du laver
If strSQL = "Select * From members = 1" Then
om til
If rs("members") = 1 Then

kommer der stadig fejl eller hvad sker der?
Avatar billede gr8m8 Novice
13. april 2003 - 12:38 #6
Jeg får denne her ->

Fejltype:
ADODB.Recordset (0x800A0CC1)
Elementet kan ikke findes i den samling, der svarer til det anmodede navn eller ordenstal.
Avatar billede michael007.dk Nybegynder
13. april 2003 - 12:42 #7
Ja ok. Så er det rs("members") eller en anden rs() der ikke findes. Det vil sige du har indtastet en der ikke er der. Evt stave fejl. Alle steder du har en rs()skal du lige checke om der er stavefejl.
Avatar billede gr8m8 Novice
13. april 2003 - 12:50 #8
Meningen er at den skal løbe min member liste igennem og tjekke om et member er team 1, team 2 eller team 3 og så derefter placere dem de rigtige steder.

---TEAM 1---
member1
member2
member3
member4
member5

---TEAM 2---
member1
member2
member3
member4
member5

... der er måske en anden og nemmere metode og jeg er åben overfor forslag :)
Avatar billede michael007.dk Nybegynder
13. april 2003 - 13:16 #9
While not rs.EOF
---TEAM 1---
If rs("members") = 1 Then
Response.Write rs("nick")
End If
rs.MoveNext
Wend
rs.MoveFirst

While not rs.EOF
---TEAM 2---
If rs("members") = 2 Then
Response.Write rs("nick")
End If
rs.MoveNext
Wend
rs.MoveFirst

While not rs.EOF
---TEAM 3---
If rs("members") = 3 Then
Response.Write rs("nick")
End If
rs.MoveNext
Wend

husk stadig at stave nick og members på samme måde som du har gjort i access
Avatar billede gr8m8 Novice
13. april 2003 - 13:46 #10
Tak for hjælpen Michael007, jeg kigger lige på sagerne :)
og ser om jeg kan få det til at spille.
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