begin process at 2010 03 19 09:14:55
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Astuces

 > FAIRE DES REQUÊTES SQL SUR UNE BASE PAR L'INTERMÉDIAIRE D'UNE PAGE ASP

FAIRE DES REQUÊTES SQL SUR UNE BASE PAR L'INTERMÉDIAIRE D'UNE PAGE ASP


 Information sur la source

Note :
7 / 10 - par 1 personne
7,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Astuces Niveau :Débutant Date de création :24/01/2002 Date de mise à jour :27/01/2002 12:17:29 Vu :9 549

Auteur : gedeef

Ecrire un message privé
Site perso
Commentaire sur cette source (5)
Ajouter un commentaire et/ou une note

 Description

Attention : cette page est un trou de sécurité à elle toute seule et ne doit être laissée sur un serveur que le temps du développement.

Son but est de vous permettre de faire facilement des requêtes sur votre base depuis votre browser pour récupérer les données (voire même la structure) de votre base.  

Source

  • <%@ Language=VBScript %>
  • <%option explicit %>
  • <%response.buffer=true%>
  • <!--
  • Auteur : Emmanuel BRUNO-GAZIGNAIRE
  • Email : ___nospam___bmanu@francenet.fr
  • Web : http://gdf.zalem.net
  • -->
  • <!-- #include virtual="/adovbs.inc" -->
  • <!--
  • Là il faut trouver le fichier adovbs.inc, il doit être qqpart sur votre machine
  • Sinon trouve le sur le net
  • -->
  • <HTML>
  • <HEAD>
  • <title>SQL</title>
  • </HEAD>
  • <BODY>
  • <%
  • if request("sql")="" then
  • %>
  • <form name="frm" action="<%=Request.ServerVariables("URL")%>" method="get">
  • <textarea name="sql" cols="80" rows="10"></textarea>
  • <br>
  • dsn : <input type="text" name="dsn" value="" size=50>
  • user : <input type="text" name="user" value="">
  • password : <input type="text" name="password" value="">
  • <a href="javascript:void(self.document.frm.submit());">Envoyer</a>
  • </form>
  • <%
  • else
  • dim cn,rs,sql,i, tonDSN, tonLogin, tonPassword
  • 'tonDsn = dsn a utiliser par defaut
  • 'tonlogin=login par defaut
  • 'tonpassword=password par defaut
  • set cn = server.CreateObject("adoDb.connection")
  • set rs = server.CreateObject("adoDb.recordset")
  • if request("dsn") <>"" then
  • if request("user")<>"" then
  • cn.Open request("dsn") , request("user") , request("password")
  • else
  • cn.Open request("dsn")
  • end if
  • else
  • cn.Open tonDSN, tonLogin, tonPassword
  • end if
  • sql=request("sql")
  • rs.Open sql, cn
  • Response.write "<table border=2 cellspacing=0 cellpadding=4 bgcolor=""#eeeeee"">" & vbcrlf
  • Response.write "<tr>" & vbcrlf
  • for i = 0 to rs.Fields.Count - 1
  • with Response
  • .Write "<td><b>" & i & "</b></td>"
  • end with
  • next
  • Response.write "<tr>" & vbcrlf
  • for i = 0 to rs.Fields.Count - 1
  • with Response
  • .Write "<td><b>" & rs.Fields(i).Name & "</b></td>"
  • end with
  • next
  • Response.write "</tr>" & vbcrlf
  • do while not rs.eof
  • Response.write "<tr>" & vbcrlf
  • for i = 0 to rs.Fields.Count - 1
  • with Response
  • if not isnull(rs.Fields(i).value ) then
  • .Write "<td>" & rs.Fields(i).value & "</td>"
  • else
  • .Write "<td>NULL</td>"
  • end if
  • end with
  • next
  • Response.write "<tr>" & vbcrlf
  • rs.movenext
  • loop
  • rs.Close
  • cn.Close
  • set rs = nothing
  • set cn = nothing
  • end if
  • %>
  • </BODY>
  • </HTML>
<%@ Language=VBScript %>
<%option explicit %>
<%response.buffer=true%>
<!--
Auteur : Emmanuel BRUNO-GAZIGNAIRE
Email : ___nospam___bmanu@francenet.fr
Web : http://gdf.zalem.net
-->

<!-- #include virtual="/adovbs.inc" -->
<!--
Là il faut trouver le fichier adovbs.inc, il doit être qqpart sur votre machine
Sinon trouve le sur le net
-->

<HTML>
<HEAD>
<title>SQL</title>
</HEAD>
<BODY>
<%
if request("sql")="" then
%>
	<form name="frm" action="<%=Request.ServerVariables("URL")%>" method="get">
	<textarea name="sql" cols="80" rows="10"></textarea>
	<br>
	dsn : <input type="text" name="dsn" value="" size=50>
	user : <input type="text" name="user" value="">
	password : <input type="text" name="password" value="">
	<a href="javascript:void(self.document.frm.submit());">Envoyer</a>
	</form>
<%
else
	dim cn,rs,sql,i, tonDSN, tonLogin, tonPassword

'tonDsn = dsn a utiliser par defaut
'tonlogin=login par defaut
'tonpassword=password par defaut

	set cn = server.CreateObject("adoDb.connection")
	set rs = server.CreateObject("adoDb.recordset")

	if request("dsn") <>"" then
		if request("user")<>"" then
			cn.Open request("dsn") , request("user") , request("password")
		else
			cn.Open request("dsn")
		end if
	else
		cn.Open tonDSN, tonLogin, tonPassword
	end if
	sql=request("sql")

	rs.Open sql, cn
	Response.write "<table border=2 cellspacing=0 cellpadding=4 bgcolor=""#eeeeee"">" & vbcrlf
	Response.write "<tr>" & vbcrlf
	for i = 0 to rs.Fields.Count - 1
		with Response
			.Write "<td><b>" & i & "</b></td>"
		end with
	next
	Response.write "<tr>" & vbcrlf
	for i = 0 to rs.Fields.Count - 1
		with Response
			.Write "<td><b>" & rs.Fields(i).Name & "</b></td>"
		end with
	next
	Response.write "</tr>" & vbcrlf

	do while not rs.eof
		Response.write "<tr>" & vbcrlf
		for i = 0 to rs.Fields.Count - 1
			with Response
				if not isnull(rs.Fields(i).value ) then
					.Write "<td>" & rs.Fields(i).value & "</td>"
				else
					.Write "<td>NULL</td>"
				end if
			end with
		next	
		Response.write "<tr>" & vbcrlf
		rs.movenext
	loop
	rs.Close
	cn.Close
	set rs = nothing
	set cn = nothing
end if
%>
</BODY>
</HTML>  



 Sources du même auteur

EXÉCUTER PÉRIODIQUEMENT DU CODE SUR UN SERVEUR AUQUEL VOUS N...
CRÉER UNE LISTE SELECT À PARTIR D'UNE REQUETE SQL
Source avec Zip Source avec une capture CRÉER DES PAGES WEB EN WYSIWIG DANS IE

 Sources de la même categorie

Source avec Zip SÉRIALISER / DÉSÉRIALISER DES VARIABLES EN ASP par lejdu
CREATION D'UN AUTOCOMPLETE JQUERY AVEC UN CODE SOURCE ASP ET... par dedebis84
Source .NET (Dotnet) RÉCUPÉRER DES VALEURS D'UNE LIGNE DANS UN DATAGRID APRÈS AVO... par PascalCmoa
Source avec Zip Source avec une capture Source .NET (Dotnet) UN SEMBLANT DE MASTERPAGE POUR DES FICHIERS XSL par bizzard4
Source avec Zip CRÉATION DE RAPPORTS EXCEL DYNAMIQUE EN ASP par foliv57

Commentaires et avis

Commentaire de thebigbang le 24/01/2002 17:17:43

Merci .. Mais il faut que je trouve comment faire sans passer par ça .. parce que la ... c'est sur que pour la sécurité .... humm humm ...

Bref ... Merci quand même ... ça peut toujours dépanné ...

@+

bigbang
bigbang00@caramail.com

Commentaire de gedeef le 24/01/2002 18:55:17

ben pour la sécurité, il suffit de
ne pas mettre en dur les dsn, logn, pass
changer le type du champ mot de passe de text à password
changer la méthode du form en post
ajouter éventuellement une authentification pour acceder a la page

Après c'est pas sécurisé car le pass transite en clair sur le réseau, mais a ce niveau là ca craint pas plus que d'envoyer un code en ASP qui contient des mots de passe par FTP, ou que d'envoyer un mail.

Si ton site c'est la banque de france d'accord oublie, sinon faut pas pousser non plus...

Commentaire de babonn le 30/01/2002 20:37:02

Dans le pire des cas vous pouvez aussi harcoder un code "Top 10" dans votre requete sql et vous limitez des mot tel que le nom de la table password ou les "delete" et "update".

Au plaisir de vous éclairer!!!

Commentaire de babonn le 30/01/2002 20:37:03

Dans le pire des cas vous pouvez aussi harcoder un code "Top 10" dans votre requete sql et vous limitez des mot tel que le nom de la table password ou les "delete" et "update".

Au plaisir de vous éclairer!!!

Commentaire de rammstein le 03/01/2008 22:41:52

Tout ce code aurait pus être évité simplement en utilisant quelque chose du genre :

response.write "<table class=""mdl-table-orange"">"
response.write "<thead>"
response.write "<tr>"
for i = 0 to rs.fields.count - 1
response.write "<th style=""text-align:left;"">" & rs.fields(i).name & "</th>"
next

response.write "</tr></thead><tbody><tr onmouseover=""this.className='on';"" onmouseout=""this.className='';""><td style=""text-align:left;padding:0px 5px 0px 5px;"">"
if rs.recordcount then response.write replace(rs.GetString(2,,"</td><td style=""text-align:left;padding:0px 5px 0px 5px;"">","</td></tr><tr onmouseover=""this.className='on';"" onmouseout=""this.className='';""><td>","null"),chr(13),"<br>")
response.write "</td></tr>"
response.write "</tbody></table>"

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,343 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales