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

Signaler
Messages postés
4
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
8 décembre 2004
-
Messages postés
4
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
8 décembre 2004
-
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>

6 réponses

Messages postés
732
Date d'inscription
jeudi 2 janvier 2003
Statut
Membre
Dernière intervention
29 octobre 2007

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-)
Messages postés
23
Date d'inscription
dimanche 10 octobre 2004
Statut
Membre
Dernière intervention
1 mai 2009

Ahmed10

Est ce tu peux travailler avec (IIS) pour les tests ou je te montre?
Messages postés
4
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
8 décembre 2004

Je travaille avec un hébergement sous IIS...
Messages postés
4
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
8 décembre 2004

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
Messages postés
6814
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
28
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
Messages postés
4
Date d'inscription
lundi 6 décembre 2004
Statut
Membre
Dernière intervention
8 décembre 2004

Bonjour,

Ton code fonctionne Roro webDev,
Merci.

Mikel