Response.Write” ” ‘tag-ul HTML are ca effect trasarea pe ecran a unei linii
If s=1 Then
Response.Write “Drepturi acordate: SELECT”
ElseIf s=2 Then
Response.Write “Drepturi acordate: SELECT, INSERT”
ElseIf s=3 Then
Response.Write ”Drepturi acordate: SELECT,INSERT,UPDATE,DELETE”
End If
‘se elibereaza memoria
rec_utiliz.close
conx.close
Set rec_utiliz=Nothing
Set conx=Nothing
‘dupa incheierea script-ului se va afisa un formular ce permite testarea de cereri SQL
‘formularul va fi transmis spre procesare paginii specificate in ACTION
‘ca urmare se executa pagina ExecutaSQL.asp
%>
Tastati fraza SQL si apasati apoi butonul OK
Afiseaza numele tabelelor si campurilor
<%
Dim SirSQL
‘se preia fraza SQL din formularul paginii PaginaSQL.asp
SirSQL=Request.Form(“Fraza”)
SirSQL=Trim(SirSQL) ‘se elimina spatiile testate din greseala
SirSQL=Ucase(SirSQL) ‘se convertesc toate caracterele in litere mari
‘este necesara convertirea deoarece VBScript face distinctie intre majuscule si minuscule
‘deci la compararea sirurilor “SELECT” si “select” rezultatul ar fi FALSE
Response.Write “Fraza SQL de executat: “ & SirSQL
Response.Write “
” ‘tag-ul HTML
face saltul la o linie noua
‘se va verifica daca utilizatiorul are dreptul sa execute tipul de interogare solicitat
If Session(“drepturiSQL”)=1 Then
If InStr(SirSQL,”INSERT”)>0 OR InStr(SirSQL,”UPDATE”)>0 OR
InStr(SirSQL,”DELETE”)>0 Then
Response.Write “Nu aveti dreptul sa executati o astfel de interogare!!!”
Response.End
End If
End If
‘se va impiedica accesul la tabelele Utilizatori si DrepturiTabele
If InStr(SirSQL,”UTILIZATORI”)>0 OR
InSTR(SirSQL,”DREPTURITABELE”)>0 Then
Response.Write “Accesul la aceasta tabele nu este permis!!!”
Response.End
End If
Dim conx ‘conexiunea ADO
Set conx=Server.CreateObject(“ADODB.Connection”) ‘crearea conexiunii
conx.Open(“Baza1”) deschiderea conexiunii
If LEFT(SirSQL,6)=”SELECT” Then
‘daca este o interogare de tip Select se va deschide un recordset se vor afisa datele
Dim rec ‘recordsetul ADO
Set rec=conx.Execute(SirSQL)
While NOT rec.EOF
For Each Item in rec.fields
‘se afiseaza valoarea unui camp si se adauga cateva spatii
Response.Write rec.Fields(Item.Name) & “ “
Next
Response.Write “ ”
Rec.MoveNext
Wend
rec.Close
Set rec=Nothing
Else
‘daca este o interogare de actiune se va executa interogarea
conx.Execute(SirSQL)
End If
conx.Close
Set conx=Nothing
%>
<%
Dim conx ‘conexiune ADO
Set conx=Server.CreateObject(“ADODB.Connection”) ‘crearea conexiunii
conx.Open (“Baza1”) ‘deschiderea conexiunii
Dim rec1 ‘recordset ADO pentru afisarea tabelelor pe care utilizatorul le poate afisa
Set rec1=
conx.Execute(“SELECT*FROM DrepturiTabele WHERE NumeUtilizator=’” & Session(“NumeUtil”) & “’;”)
While Not rec1.EOF
‘tag-urile HTML determina scrierea tabelei cu litere ingrosate
Response.Write “ Tabela:” & rec1.fields(“NumeTabela”) & “”
Response.Write “ ”
Dim rec2 ‘recordset ADO pentru a afisa numele de campuri
Set rec2=conx.Execute(“SELECT*FROM” & rec1.fields(“NumeTabela”) & ”;”)
For Each Item in rec2.Fields
Response.Write item.name & “
”
Next
rec2.Close
Set rec2=Nothing
rec1.MoveNext
Wend
rec1.Close
Set rec1=Nothing
conx.Close
Set conx=Nothing
%>
Dostları ilə paylaş: |