09. november 2003 - 13:20Der er
27 kommentarer og 1 løsning
Tjek database om eksistens
Hej Eksperter
Jeg har to tabeller. Den ene med brugere [tabel X], og den anden med deres rettigheder [Tabel Y]. Der er flere sider, som de skal have rettigheder til, eks. et site om spil, og et site om film. I [tabel y] er der en række for hver site de har adgang til. Eks: --------------------- user site level 4 spil 2 4 film 3 5 spil 3 --------------------- Når jeg så vil redigerer i bruger nummer 4 eksempelvis, har jeg nogle radiobuttons, hvor fra man kan vælge deres level (2,3 og 4). --------------------- <tr> <td width="132" colspan="2"><font size="2">Spil</font></td> <td width="64"><input type="radio" value="2" name="spil"></td> <td width="58"><input type="radio" value="3" name="spil"></td> <td width="257"><input type="radio" value="4" name="spil"></td> </tr> <tr> <td width="132" colspan="2"><font size="2">Film</font></td> <td width="64"><input type="radio" value="2" name="film"></td> <td width="58"><input type="radio" value="3" name="film"></td> <td width="257"><input type="radio" value="4" name="film"></td> </tr> ---------------------
Det er så meningen at den skal tjekke [tabel y] om hvilke rettigheder brugeren har i den tabel. Det skal lige siges at har man tidligere valgt at brugeren ikke har rettigheder (value 4) så bliver der ikke registreret noget i databasen. Dvs. at scriptet skal tjekke om der findes en post i databasen med brugerens id og sitet værdi (eks. spil) - Hvis ikke skal: <input type="radio" value="4" name="spil"> være "checked".
Findes posten der i mod skal den finde den værdi eks. 2 og så gøre: <input type="radio" value="2" name="spil"> "checked".
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
strSQL = "Select TOP 1 from TABELY where id = " & bruger_id ' åben forbindelsen
if (not rs.bof) and (not rs.eof) then ' feltet eksisterer mysite = rs("site")
if len(rs("level")) = 0 then ' længden af indholdet af feltet level er 0 -> der står ikke noget -> brugeren har ikke rettigheder myvalue = "4" else myvalue = rs("level") end if %>
Mht "Top 1": Jeg bruger her Top 1, som vælger den først record/post. Jeg er ikke helt sikker på "Top 1", hvis det ikke virker, kan du prøve med "*" i stedet for "Top 1".
Mht "id =.." Jeg mener at når man tester/spørger til en værdi som er et tal, skal der ikke ' udenom.. eksempel: bruger_id er et tal: where id = " & bruger_id bruger_id er string/tekst: where id = '" & bruger_id & "'"
det ville være nemmer at overskue hvis du havde dine if-sætninger i asp kode, og smed resultat over en variabel.. derefter bruger du <%=variabelnavn%> i stedet for <% if rs_userperm1("level") = "3" Then response.write ("checked") End If%>
Thanx det virker - I hvert fald med den der ikke eksisterer - Hvad med de andre to? Jeg har nu:
<% Set RS_userperm1 = Server.CreateObject("ADODB.RecordSet") RS_userperm1.open "Select * from [user_permisions] WHERE user_id = " & RS_edit_personel("id") &" AND site = 1", Conn_crew, 1, 3
dim strNoRecord1 strNoRecord1 = "" if RS_userperm1.bof or RS_userperm1.eof then strNoRecord1 = " checked" end if %> <tr> <td width="132" colspan="2"><font size="2">Games</font></td> <td width="64"><font face="Trebuchet MS" size="2"> <input type="radio" value="2" name="games"></td> <td width="58"><font face="Trebuchet MS" size="2"> <input type="radio" value="3" name="games"></td> <td width="257"><font face="Trebuchet MS" size="2"> <input type="radio" value="4" name="games" <%=strNoRecord1%>> </td> </tr>
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.