Tester le resultat d'une requete [Résolu]

Messages postés
4
Date d'inscription
lundi 6 décembre 2004
Dernière intervention
8 décembre 2004
- - Dernière réponse : mjcra
Messages postés
4
Date d'inscription
lundi 6 décembre 2004
Dernière intervention
8 décembre 2004
- 8 déc. 2004 à 14:20
Bonjour,

Je souhaite tester la requete SQL ci-dessous pour afficher un message si la requete ne revoie aucun résultat? ?
Mais je bloque?
Merci d'avance

<select name="Nom_produit" STYLE="Width:300;font-family:Arial;font-size:10">
<% SET dbConn = Server.CreateObject("ADODB.Connection") 'Création de l'objet serveur
MdbFilePath = Server.MapPath("Latorre.mdb") 'Connexion à la base de données mabase.mdb
dbConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"
SQL="SELECT * FROM Document WHERE ID_fournisseur= " & request("Nom_fournisseur") & " AND ID_gamme= " & request("Nom_gamme") & " order by Nom_produit;"
SET rsTbl = dbConn.Execute(SQL) %>
<% DO WHILE not rsTbl.eof %>
<option value="<%=rsTbl("ID_produit")%>"><%=rsTbl("Nom_produit")%></option>
<% rsTbl.movenext
LOOP
SET rsTbl=nothing
dbConn.close
SET dbConn=nothing %>
</select>
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
732
Date d'inscription
jeudi 2 janvier 2003
Dernière intervention
29 octobre 2007
3
Merci
Bonjour,
Moi, j'écrirais ça comme ceci :
<% SET dbConn = Server.CreateObject("ADODB.Connection") 'Création de l'objet serveur
MdbFilePath = Server.MapPath("Latorre.mdb") 'Connexion à la base de données mabase.mdb
dbConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"
SQL="SELECT Document.Nom_produit, Document.ID_produit FROM Document WHERE ID_fournisseur= " & request("Nom_fournisseur") & " AND ID_gamme= " & request("Nom_gamme") & " order by Nom_produit;"
SET rsTbl = dbConn.Execute(SQL) %>
<select name="Nom_produit" STYLE="Width:300;font-family:Arial;font-size:10">
<% if rsTbl.eof then %>
<option value="1"> "Aucune réponse ne correspond à la requete" </option>
<%else%>
<% WHILE not rsTbl.eof
<option value="<%=rsTbl("ID_produit")%>"><%=rsTbl("Nom_produit")%></option>
<% rsTbl.movenext
wend
End if %>
</select>
<%
SET rsTbl=nothing
dbConn.close
SET dbConn=nothing %>

Roro webDev 8-)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 106 internautes ce mois-ci

Commenter la réponse de cs_roro06
Messages postés
23
Date d'inscription
dimanche 10 octobre 2004
Dernière intervention
1 mai 2009
0
Merci
Ahmed10

Est ce tu peux travailler avec (IIS) pour les tests ou je te montre?
Commenter la réponse de 10ahmed10
Messages postés
4
Date d'inscription
lundi 6 décembre 2004
Dernière intervention
8 décembre 2004
0
Merci
Je travaille avec un hébergement sous IIS...
Commenter la réponse de mjcra
Messages postés
4
Date d'inscription
lundi 6 décembre 2004
Dernière intervention
8 décembre 2004
0
Merci
J'ai ajouté une boucle if pour tester le résultat de ma requete mais à priori, il ne passe pas dans la première instruction (<option value="1"> "Aucune réponse ne correspond à la requete" </option>). Je ne comprend pas pourquoi :

<select name="Nom_produit" STYLE="Width:300;font-family:Arial;font-size:10">
<% SET dbConn = Server.CreateObject("ADODB.Connection") 'Création de l'objet serveur
MdbFilePath = Server.MapPath("Latorre.mdb") 'Connexion à la base de données mabase.mdb
dbConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"
SQL="SELECT Document.Nom_produit, Document.ID_produit FROM Document WHERE ID_fournisseur= " & request("Nom_fournisseur") & " AND ID_gamme= " & request("Nom_gamme") & " order by Nom_produit;"
SET rsTbl = dbConn.Execute(SQL) %>
<% DO WHILE not rsTbl.eof
if rsTbl("Nom_produit") = null then %>
<option value="1"> "Aucune réponse ne correspond à la requete" </option>
<%else%>
<option value="<%=rsTbl("ID_produit")%>"><%=rsTbl("Nom_produit")%></option>
<% End if %>
<% rsTbl.movenext
LOOP
SET rsTbl=nothing
dbConn.close
SET dbConn=nothing %>
</select>

Merci
Commenter la réponse de mjcra
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Dernière intervention
13 octobre 2010
0
Merci
connait pas vbscript, mais en vb.net ton code marche pas à cause de
if rsTbl("Nom_produit") = null then
mais il lui faudrait
if rsTbl("Nom_produit") is nothing then

moi en vb.net j'ai fait une petite fonction pour ca :

Friend Function ReadString(ByVal Source As IDataReader, ByVal Field As String) As String
If Not Source.Item(Field) Is DBNull.Value Then
Return CType(Source.Item(Field), String)
End If
End Function

Cyril
Commenter la réponse de jesusonline
Messages postés
4
Date d'inscription
lundi 6 décembre 2004
Dernière intervention
8 décembre 2004
0
Merci
Bonjour,

Ton code fonctionne Roro webDev,
Merci.

Mikel
Commenter la réponse de mjcra

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.