probleme en asp - ASP - Programmation
Marsh Posté le 10-09-2004 à 13:23:06
Le message d'erreur me semble clair !
EOF BOF, ta requete ne retourne rien.
Donc esaye de chopper le texte de SQL2 et verifie le !
Marsh Posté le 10-09-2004 à 14:09:10
Merci d'abord
la table est plein, quand je deplace la requete sql2 au debut du traitement ca passe, je ne recois pas ce message et j'ai fais un tracage d'affichage du contenu du champ de recherche comme vous l'avez constater au programme ca me retourne des valeurs qui ne sonts pas exacte car ce n'est pas le bon emplacement parceque je dois avoir le contenu d'un champ de ma premier requete sql (categorie) pour effectuer sql2, je me demande pourquoi quand je place sql2 comme deuxième requete pour avoir le bon contenu de la variable de recherche il me sort ce message ,je pense comme ca vous pouvez plus comprendre mon message. Merci
Marsh Posté le 10-09-2004 à 14:11:11
gedeon a écrit : Le message d'erreur me semble clair ! |
Merci d'abord
la table est plein, quand je deplace la requete sql2 au debut du traitement ca passe, je ne recois pas ce message et j'ai fais un tracage d'affichage du contenu du champ de recherche comme vous l'avez constater au programme ca me retourne des valeurs qui ne sonts pas exacte car ce n'est pas le bon emplacement parceque je dois avoir le contenu d'un champ de ma premier requete sql (categorie) pour effectuer sql2, je me demande pourquoi quand je place sql2 comme deuxième requete pour avoir le bon contenu de la variable de recherche il me sort ce message ,je pense comme ca vous pouvez plus comprendre mon message. Merci
Marsh Posté le 10-09-2004 à 14:31:27
Tu peux essayer ça ?
SQL2 = <%=SQL2%>
<%
' mtn=rs2("Mtnormal" )
' mta=rs2("Mtameliore" )
' SQL="SELECT consommation.*, consommation.Matricule FROM consommation "
' SQL =SQL & "WHERE (((consommation.Matricule) like '%" & Matricule & "%')) ORDER BY Date;"
' SET Connect = Server.CreateObject("ADODB.Connection" )
connstring="DRIVER={Microsoft Access Driver (*.mdb)}; '"&"DBQ="&Server.MapPath("." )&"/restauration.mdb"'
' Connect.Open connstring
' SET RS = Connect.Execute(SQL)
'If rs.RecordCount <> 0 and not rs.eof Then
' prix1 = 0
%>
Et poster le resultat ?
Marsh Posté le 10-09-2004 à 15:47:41
je porte à votre connaissance que je suis débutante en asp càd c'est ma première page web en asp et j'ai pas eu de formation en ce code(asp).
est ce que je doit inserer toutes ces lignes dans ma page et à quel niveau? Merci .
gedeon a écrit : Tu peux essayer ça ? |
Marsh Posté le 10-09-2004 à 16:05:21
Bon ok , donc on va faire plus compréhensible
Remplace
<%
mtn=rs2("Mtnormal" )
mta=rs2("Mtameliore" )
SQL="SELECT consommation.*, consommation.Matricule FROM consommation "
SQL =SQL & "WHERE (((consommation.Matricule) like '%" & Matricule & "%')) ORDER BY Date;"
SET Connect = Server.CreateObject("ADODB.Connection" )
connstring="DRIVER={Microsoft Access Driver (*.mdb)}; "&"DBQ="&Server.MapPath("." )&"/restauration.mdb"'
Connect.Open connstring
SET RS = Connect.Execute(SQL)
If rs.RecordCount <> 0 and not rs.eof Then
prix1 = 0
%>
par ça
SQL2 = <%=SQL2%>
Et poste le resultat de la ligne :
SQL2 = SELECT Tarif.*,Tarif.Mtnormal,Tarif.Mtameliore FROM Tarif WHERE .... etc
Marsh Posté le 13-09-2004 à 13:35:29
Merci de votre comprehension.
J'ai fais ce que vous m'avez proposer mon nouveau programme est le suivant:
<% If msg = 1 then
SQL="SELECT convive.* FROM convive "
SQL= SQL & "WHERE (((convive.Matricule) like '%" & Matricule & "%'));"
SET Connect = Server.CreateObject("ADODB.Connection" )
connstring="DRIVER={Microsoft Access Driver (*.mdb)}; "&"DBQ="&Server.MapPath("." )&"/restauration.mdb"'
Connect.Open connstring
SET RS = Connect.Execute(SQL)
If rs.RecordCount <> 0 and not rs.eof Then
nom = rs("Nom / Prénom" )
categorie = rs("Tarif" )
%>
<font color="#99CCFF"><%=rs("Tarif" )%><p align="right"></font>
SQL2 = <%=SQL2%>
<% SQL2="SELECT Tarif.*,Tarif.Mtnormal,Tarif.Mtameliore FROM Tarif "
SQL2 =SQL2 & "WHERE (((Tarif.code) like '%" & categorie & "%'));"
SET Connect2 = Server.CreateObject("ADODB.Connection" )
Connstring2="DRIVER={Microsoft Access Driver (*.mdb)}; "&"DBQ="&Server.MapPath("." )&"/restauration.mdb"'
Connect2.Open connstring2
SET RS2 = Connect2.Execute(SQL2)
mtn=rs2("Mtnormal" )
mta=rs2("Mtameliore" )
%>
<font color="#99CCFF"><%=rs2("code" )%><p align="right"></font>
ça me donne tjs le message d'erreur suivant dont la ligne 51 est mtn=rs2("Mtnormal" ) :
Type d'erreur :
ADODB.Field (0x800A0BCD)
BOF ou EOF est égal à True ou l'enregistrement actuel a été supprimé. L'opération demandée nécessite un enregistrement actuel.
/Restauration/Fiche consom.asp, line 51
Type de navigateur :
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
Page :
POST 32 bytes to /Restauration/Fiche consom.asp
POST Data:
Matricule=2144&CHERCHER=CHERCHER
Heure :
lundi 13 septembre 2004, 11:31:27
gedeon a écrit : Bon ok , donc on va faire plus compréhensible |
Marsh Posté le 13-09-2004 à 14:50:33
enleve moi ça !!!!!
mtn=rs2("Mtnormal" )
mta=rs2("Mtameliore" )
Marsh Posté le 13-09-2004 à 17:03:11
c'est fait et ça donne tjs le même message ce qui m'etonne c'est que quand je deplace la requete sql2 au début c à d après if msg = 1 ect je ne reçois pas de message et le programme tourne bien sauf les données de ma requete sql2 ne sont pas bonnes car elle est mal placer .Merci.
gedeon a écrit : Et colle ça à la fin ! |
Marsh Posté le 10-09-2004 à 13:09:56
Bonjour
j'ai rencontrer un problème dans une requete pour acceder à ma base de donnée access.dans ma page asp il y a trois requete dont une seule qui ne marche pas celle de sql2. Voila la partie de mon programme ou ila y a le problème :
<% If msg = 1 then
SQL="SELECT convive.* FROM convive "
SQL= SQL & "WHERE (((convive.Matricule) like '%" & Matricule & "%'));"
SET Connect = Server.CreateObject("ADODB.Connection" )
connstring="DRIVER={Microsoft Access Driver (*.mdb)}; "&"DBQ="&Server.MapPath("." )&"/restauration.mdb"'
Connect.Open connstring
SET RS = Connect.Execute(SQL)
If rs.RecordCount <> 0 and not rs.eof Then
nom = rs("Nom / Prénom" )
categorie = rs("Tarif" )
%>
<font color="#99CCFF"><%=rs("Tarif" )%><p align="right"></font>
<%
SQL2="SELECT Tarif.*,Tarif.Mtnormal,Tarif.Mtameliore FROM Tarif "
SQL2 =SQL2 & "WHERE (((Tarif.code) like '%" & categorie & "%'));"
SET Connect2 = Server.CreateObject("ADODB.Connection" )
Connstring2="DRIVER={Microsoft Access Driver (*.mdb)}; "&"DBQ="&Server.MapPath("." )&"/restauration.mdb"'
Connect2.Open connstring2
SET RS2 = Connect2.Execute(SQL2)
%>
<font color="#99CCFF"><%=rs2("code" )%><p align="right"></font>
<%
mtn=rs2("Mtnormal" )
mta=rs2("Mtameliore" )
SQL="SELECT consommation.*, consommation.Matricule FROM consommation "
SQL =SQL & "WHERE (((consommation.Matricule) like '%" & Matricule & "%')) ORDER BY Date;"
SET Connect = Server.CreateObject("ADODB.Connection" )
connstring="DRIVER={Microsoft Access Driver (*.mdb)}; "&"DBQ="&Server.MapPath("." )&"/restauration.mdb"'
Connect.Open connstring
SET RS = Connect.Execute(SQL)
If rs.RecordCount <> 0 and not rs.eof Then
prix1 = 0
%>
<div align="center">
Le message d'erreur au lancement de ma page est le suivant :
Type d'erreur :
ADODB.Field (0x80020009)
BOF ou EOF est égal à True ou l'enregistrement actuel a été supprimé. L'opération demandée nécessite un enregistrement actuel.
/Restauration/Fiche consom.asp
Type de navigateur :
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)
Merci d'avance.
Page :
POST 32 bytes to /Restauration/Fiche consom.asp
POST Data:
Matricule=2411&CHERCHER=CHERCHER
Heure :
vendredi 10 septembre 2004, 10:38:56
Informations complémentaires :