codeville se trouve dans la chaîne de caractère
composant ta requête, et n'est donc pas considéré comme une
variable. Qd le moteur de base reçoit 'where code_ville = codeville', il comprend pas et pense que codeville est
un paramètre. Comme celui-ci n'est pas renseigné, tu reçoit un msg d'erreur.
Je suis pas sûr d'avoir été très clair là...
Donc comme l'écrit Lord II, il faut écrire ta requête ainsi :
<%RsConn.Open "SELECT * FROM villes WHERE code_ville = " & codeville , Conn%>
Ca marchera si code_ville est un numérique. Par contre, si c'est
une chaîne, il faut écrire :
<%RsConn.Open "SELECT * FROM villes WHERE code_ville = """ & codeville & """" , Conn%>
DJERO
Peux tu me préciser:
"mais ta requete serait executée si elle recevait les bons parametres de connexion ce qui visiblement est faux"
Merci
Lord II
Une première chose, ta requete ne devrait donner aucun résultat car c'est comme ca qu'il faut ecrire la requete :
Select * from villes where code_ville = " & codeville
Voilà un premier point, mais ta requete serait executée si elle recevait les bons parametres de connexion ce qui visiblement est faux. l'erreur est d'ailleurs assez explicite ( Too few parameters)
DJERO
Voici mon code:
<%
Dim codeville
codeville = (Request("sz_cod_vil" ))
%>
<%=codeville%>
<%RsConn.Open "SELECT * FROM villes WHERE code_ville = codeville" , Conn%>
Voici le lien d'appel :
http://Dje/ville/indexville.asp?sz_cod_vil=43
Et voici le message d'erreur:
43 Microsoft OLE DB Provider for ODBC Drivers erreur '80040e10'
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
/ville/indexville.asp, ligne 28
Note:
Ce que je ne comprends pas c'est que la variable "codeville" est bien récupérée car elle est bien inscrite par le <%=code_ville> avant le message d'erreur (43)