Probelm ambigious
Hej,Jeg har et spørgsmål der hænger en del sammen med:
http://www.eksperten.dk/spm/427475
Der skal trækkes nogle sider ud af en database, og de skal så grupperes efter en træstruktur. Sådan at alle undersider bliver udskrevet under deres hovedside. Desuden tilhører alle sider et 'County' som er den "øverste" grupperingsfaktor.
Alt det har jeg fået god hjælp til i det tidligere omtalte spørgsmål. Nu er det bare at jeg er kommet i tanke om at det skal udvides med brugerrettigheder til de forskellige sider.
Session("Rank") angiver:
1. admin
2. superuser
Admin skal selvfølgelig have adgang til alt. Superuser skal kun have adgang til de sider han har fået lov til af admin. Derfor har jeg lavet en tabel som holder styr på brugerrettigheder. Den hedder useraccess og indeholder følgende:
- pageID
- userID
- groupID
Hvis en bruger (eller en gruppe) har adgang til en side så står pageid og userid her.
Alt dette skal så nu kædes sammen i en lang SQL sætning og det er så det jeg har forsøgt herunder.
Men jeg får som i nok kan gætte fejl.
"[MySQL][ODBC 3.51 Driver][mysqld-4.0.12-nt]Column: 'County' in where clause is ambiguous"
<%
If Session("Rank") = 2 then
SQL = "Select County from Pages WHERE County > 0 group by County "
SET RS = Conn.Execute(SQL)
' tabellen starter her
Response.Write "<table width='100%' border='0' cellspacing='0' cellpadding='2'>"
Do while NOT RS.EOF
subSQL = "Select * from County where CountyID = " & RS("County")
set rs2 = Conn.Execute(subSQL)
Do While not rs2.eof
' udskriver kommunebaren
Response.Write "<tr bgcolor='0c3c63'><td colspan='5'><span class='style1'>" & ucase(rs2("Name")) & "</span></td></tr>"
' udskriver tekstbaren her
Response.Write "<tr>"
Response.Write "<td width='271'><strong>Titel</strong></td>"
Response.Write "<td width='96'><strong>Sidst red.</strong></td>"
Response.Write "<td width='97'><div align='center'><strong>Relaterede filer</strong></div></td>"
Response.Write "<td width='96'><div align='center'><strong>Egenskaber</strong></div></td>"
Response.Write "<td width='96'><div align='center'><strong>Slet?</strong></div></td>"
Response.Write "</tr>"
subsubSQL = "Select * FROM Pages Left Join useraccess On Pages.pageid = useraccess.pageid WHERE useraccess.PageID = Pages.PageID AND useraccess.GroupID = " & Session("GroupID") & " AND Main = 1 AND lang =" & Session("language") & " AND County = "& RS("County")
SET subsubRS = Conn.Execute(subsubSQL)
Do while NOT subsubRS.EOF
Response.Write "<tr>"
Response.Write "<td><a href='../../../red.asp?pageid=" & subsubRS("pageid") & "'>" & subsubRS("Title") &"</a></td>"
Response.Write "<td></td>"
Response.Write "<td><div align='center'></div></td>"
Response.Write "<td><div align='center'></div></td>"
Response.Write "<td><div align='center'></div></td>"
Response.Write "</tr>"
subsubsubSQL = "Select * FROM Pages Left Join useraccess On Pages.pageid = useraccess.pageid WHERE useraccess.PageID = Pages.PageID AND useraccess.GroupID = " & Session("GroupID") & " AND Parent = " & rs("PageID") & " AND County = "& RS("County")
SET subsubsubRS = Conn.Execute(subsubsubSQL)
Do while NOT subsubsubRS.EOF
Response.Write "<tr>"
Response.Write "<td><a href='../../../red.asp?pageid=" & subsubsubRS("pageid") & "'>" & "- " & subsubsubRS("Title") &"</a></td>"
Response.Write "<td></td>"
Response.Write "<td><div align='center'></div></td>"
Response.Write "<td><div align='center'></div></td>"
Response.Write "<td><div align='center'></div></td>"
Response.Write "</tr>"
subsubsubRS.movenext
loop
subsubRS.MoveNext
loop
rs2.movenext
loop
RS.MoveNext
loop
' tabellen slutter her
Response.Write "</table>"
End if
%>
Pyha, det var en lang smørre. Håber der er en der har tid til at hjælpe mig videre.
På forhånd tak.
/pfp
PS: Sig til hvis det kræver flere point.
