30. januar 2004 - 13:05Der er
11 kommentarer og 1 løsning
Lave link hvis bruger er logget ind
Hej alle
Kig på følgende linier: If Session("svUserID") <> "" Then Bibliotek_fundne.Source = "SELECT * FROM Dokumentarkiv WHERE Doktype LIKE '%" + Replace(Bibliotek_fundne__varType, "'", "''") + "%' AND Dokint NOT LIKE '1' AND Doksprog LIKE '%DK%' AND Dokps LIKE '%' AND (Doktypenr LIKE '%" + Replace(Bibliotek_fundne__varKey, "'", "''") + "%' OR Doknavn LIKE '%" + Replace(Bibliotek_fundne__varKey, "'", "''") + "%' OR Dokkeywords LIKE '%" + Replace(Bibliotek_fundne__varKey, "'", "''") + "%') ORDER BY " + Replace(Bibliotek_fundne__varSort, "'", "''") + "" Else Bibliotek_fundne.Source = "SELECT * FROM Dokumentarkiv WHERE Doktype LIKE '%" + Replace(Bibliotek_fundne__varType, "'", "''") + "%' AND Dokint NOT LIKE '1' AND Doksprog LIKE '%DK%' AND Dokps LIKE '0' AND (Doktypenr LIKE '%" + Replace(Bibliotek_fundne__varKey, "'", "''") + "%' OR Doknavn LIKE '%" + Replace(Bibliotek_fundne__varKey, "'", "''") + "%' OR Dokkeywords LIKE '%" + Replace(Bibliotek_fundne__varKey, "'", "''") + "%') ORDER BY " + Replace(Bibliotek_fundne__varSort, "'", "''") + "" End If
Det er en kode der tjekket om Session("svUserID") <> "" og hvis ja, laves et anderledes SQL sætning. Det virker fint.
<td width="100" class="tabel" height="30"><a href="<%=(Bibliotek_fundne.Fields.Item("Dokplacering").Value)%>" target="_blank"><%=(Bibliotek_fundne.Fields.Item("Doktypenr").Value)%></a></td> --> <td width="100" class="tabel" height="30"><% If Session("svUserID") <> "" Then %><a href="<%=(Bibliotek_fundne.Fields.Item("Dokplacering").Value)%>" target="_blank"><% End If %><%=(Bibliotek_fundne.Fields.Item("Doktypenr").Value)%><% If Session("svUserID") <> "" Then %></a><% End If %></td>
Ikke det store i det... Men mht. til din SQL-sætning, kunne du dele den lidt op - er jo kun "Dokps LIKE '0'" som bliver ændret, efter hvad jeg lige skimmede igennem....
Stingbat: Din metode er sådanset den eftersøgte. Men det jeg eftersøgte var nu en metode hvor NOGLE af dokumenterne kunne ses/åbnes af alle, mens ANDRE kun var aktive links hvis if session("svUserID") <> "" og Dokps = 1
I databasen er Dokps feltet niveau for dokumentet. 0 = kan ses af alle, 1 = Kun for medlemmer...
Altså... hvis nu at du i databasen, kun har 2 niveauer, ved du vha. den ændring i SQL-stringen, gøre så at hvis svUserID er sat, så vil denne jo være sand - og når man så har "AND 1", vil det medføre, at hvis den er sat bliver værdien 1, og hvis ikke, bliver den 0
Hmmm, kan godt se hvad du mener, men jeg tror vi snakker forbi hinanden...
SQL'en SKAL hive ALLE records ud. Alle records hvor Dokps = 0 skal være aktive links Alle records hvor Dokps = 1 skal KUN være aktive når svUserID <> fra 0
Se det lyder rigtigt! Kan desværre første tjekke det på tirsdag, men du kunne starte med at lave et svar - så kommer pointene når jeg har prøvet det af...
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.