Créer une liste select à partir d'une requete sql

Soyez le premier à donner votre avis sur cette source.

Snippet vu 16 413 fois - Téléchargée 36 fois

Contenu du snippet

Juste une petite fonction qui renvoie le code HTML d'un select à partir d'une requête SQL.
Les arguments sont :
Cn : un objet ADODB.Connection ouvert
Sql : une chaine contenant la requête SQL
Name : une chaine contenant le nom (et id) de votre objet HTML
Class : une chaine contenant l'attribut class de l'objet pour appliquer une feuille de style

Source / Exemple :


<!-- Fichier use.asp -->
<!--
Author	: Emmanuel BRUNO-GAZIGNAIRE
Email	: ___nospam___bmanu@francenet.fr
Web Site	: http://gdf.zalem.net
-->
<!-- #include virtual="/doSelect.asp" -->
<html>
<head>
<style>
.sel {
    FONT-WEIGHT: normal;
    FONT-SIZE: 8pt;
    COLOR: #003060;
    FONT-FAMILY: Verdana, Arial, Helvetica, sans-serif;
    BACKGROUND-COLOR: #e9e8e2
}
</style>
</head>
<body>
<%
Dim Cnc, sql
set Cnc = server.CreateObject("adodb.connection")
Cnc.Open "dsn", "login", "passw"
sql = "select id, nom from myTable"

Response.Write "Pour afficher un select, cette méthode utilise la fonction getString, beaucoup plus rapide qu'un parcours de recordset<br>"

Response.Write doSelect(Cnc, sql, "monselect", "sel")
%>
</body>
</html>

<!-- fichier doSelect.asp -->
<!--
Author	: Emmanuel BRUNO-GAZIGNAIRE
Email	: ___nospam___bmanu@francenet.fr
Web Site	: http://gdf.zalem.net
-->
<script language="jscript" runat="server">
function doSelect(Cn, Sql, Name, Class){
	var Rs = new ActiveXObject('adodb.recordset');
	var adClipString = 2;
	Rs.Open(Sql, Cn);
	var result = '\<select name=\"' + Name + '\" id=\"' + Name + '\" class=\"' + Class + '\">\n';
	result += '\t\<option value=\"\"\>\<\/option\>\n';
	result += '\t\<option value=\"';
	result += Rs.GetString(adClipString, Rs.RecordCount, '\"\>', '\<\/option\>\n\t\<option value=\"', '');
	result = result.substring(0, result.length - 17);
	result += '\n\<\/select\>';
	Rs.Close();
	Rs = null;
	return result;
}
</script>

A voir également

Ajouter un commentaire

Commentaires

Lintra
Messages postés
7
Date d'inscription
mardi 27 novembre 2001
Statut
Membre
Dernière intervention
11 avril 2002
-
Type d'erreur :
Erreur de compilation Microsoft JScript (0x800A03EC)
';' attendu
/doSelect.asp, line 8, column 9
Function doSelect(Cn, Sql, Name, Class){
Pkoi ça marche pas ? STP
Merci
gedeef
Messages postés
70
Date d'inscription
dimanche 20 janvier 2002
Statut
Membre
Dernière intervention
16 février 2002
-
Faut pas de majuscule à new
Je corrige, je pense que c'est tout.
gedeef
Messages postés
70
Date d'inscription
dimanche 20 janvier 2002
Statut
Membre
Dernière intervention
16 février 2002
-
Je peux pas corriger, c'est le script qui met en forme le code sur le site qui me rajoute une majuscule.
cs_AshenShugar
Messages postés
202
Date d'inscription
jeudi 24 juin 2004
Statut
Membre
Dernière intervention
22 janvier 2009
1 -
tu etais vraiment obligé de passer par du JS ?
Excuse moi, mais je reste sceptique. Neanmoins, je ne m'y connais pas trop en .NET, c'est ptet ca...
Commenter la réponse de Lintra

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.