Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment passer une variable asp dans une requête MS-ACCESS

7 réponses
Avatar
Poun1
Bonjour,
Dans la commande SQL SELECT de ma requête, j'aimerais donner dans l'argument
WHERE une variable qui est settée dans ma page asp. Ma variable s'appelle
sData1.
Son contenu est le 'username' de la personne qui vient de se logger. Après
l'authentification de l'utilisateur, je veux extraire de ma base uniquement
les données relatives à cet utilisateur. Si je met dans l'argument WHERE
sData1, il me dit qu'il ne connait pas cette variable.

Comment dois-je faire pour que MS-ACCESS connaisse cette variable ?

Merci pour votre aide.
Meilleures salutations.

7 réponses

Avatar
3stone
Salut,

"Poun1"
| Dans la commande SQL SELECT de ma requête, j'aimerais donner dans l'argument
| WHERE une variable qui est settée dans ma page asp. Ma variable s'appelle
| sData1.
| Son contenu est le 'username' de la personne qui vient de se logger. Après
| l'authentification de l'utilisateur, je veux extraire de ma base uniquement
| les données relatives à cet utilisateur. Si je met dans l'argument WHERE
| sData1, il me dit qu'il ne connait pas cette variable.
|
| Comment dois-je faire pour que MS-ACCESS connaisse cette variable ?


Il faut faire appel à une fonction qui te transmettra la valeur de la variable.


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Poun1
Pierre,
Merci beaucoup pour cette réponse.
Mais j'ai encore une question.
Cette fonction dois-je la mettre dans un module ACCESS ou dans ma page asp ?

Merci pour votre aide.
Meilleures salutations
Eric


Salut,

"Poun1"
| Dans la commande SQL SELECT de ma requête, j'aimerais donner dans l'argument
| WHERE une variable qui est settée dans ma page asp. Ma variable s'appelle
| sData1.
| Son contenu est le 'username' de la personne qui vient de se logger. Après
| l'authentification de l'utilisateur, je veux extraire de ma base uniquement
| les données relatives à cet utilisateur. Si je met dans l'argument WHERE
| sData1, il me dit qu'il ne connait pas cette variable.
|
| Comment dois-je faire pour que MS-ACCESS connaisse cette variable ?


Il faut faire appel à une fonction qui te transmettra la valeur de la variable.


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
3stone
Salut,

"Poun1"
| Cette fonction dois-je la mettre dans un module ACCESS ou dans ma page asp ?


Je ne pratique pas l'ASP et ce n'est pas près d'arriver...
MS à déjà mis cela au frigo, définitivement, je pense.

Mais, vu d'ici, je dirais dans un module Access ;-)


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Bill2
Poun1 wrote:
Bonjour,
Dans la commande SQL SELECT de ma requête, j'aimerais donner dans
l'argument WHERE une variable qui est settée dans ma page asp. Ma
variable s'appelle sData1.
Son contenu est le 'username' de la personne qui vient de se logger.
Après l'authentification de l'utilisateur, je veux extraire de ma
base uniquement les données relatives à cet utilisateur. Si je met
dans l'argument WHERE sData1, il me dit qu'il ne connait pas cette
variable.

Comment dois-je faire pour que MS-ACCESS connaisse cette variable ?

Merci pour votre aide.
Meilleures salutations.



euh .. faut voir comment tu travailles ...
Est-ce tu appelles une requete stockée dans access depuis ta page ASP, ou
est-ce que tu crée ta requete dans la page ASP ?

parce que dans le 2e cas, c'est simple :

Requete="select blabla from Table where blabla like '" & MaValeur & "';"

--
Bill2, http://trombi.host-web.net/Consult/Details.asp?Id
www.chatxp.fr.st

Proverbe à la con : Quand l'orage gronde, le tempête

Avatar
Poun1

Poun1 wrote:
Bonjour,
Dans la commande SQL SELECT de ma requête, j'aimerais donner dans
l'argument WHERE une variable qui est settée dans ma page asp. Ma
variable s'appelle sData1.
Son contenu est le 'username' de la personne qui vient de se logger.
Après l'authentification de l'utilisateur, je veux extraire de ma
base uniquement les données relatives à cet utilisateur. Si je met
dans l'argument WHERE sData1, il me dit qu'il ne connait pas cette
variable.

Comment dois-je faire pour que MS-ACCESS connaisse cette variable ?

Merci pour votre aide.
Meilleures salutations.



euh .. faut voir comment tu travailles ...
Est-ce tu appelles une requete stockée dans access depuis ta page ASP, ou
est-ce que tu crée ta requete dans la page ASP ?

parce que dans le 2e cas, c'est simple :

Requete="select blabla from Table where blabla like '" & MaValeur & "';"

--
Bill2, http://trombi.host-web.net/Consult/Details.asp?Id
www.chatxp.fr.st

Proverbe à la con : Quand l'orage gronde, le tempête



Bonjour Bill2

Merci pour ta réponse.
Voici quelques compléments.
Lorsqu'un utilisateur s'annonce, je stocke son userid dans un cookie.
Response.cookies("info1")("sData") = (Request.Form("User"))
Je fais cela car la page default.asp n'est pas la même selon que
l'utilisateur est administrateur ou pas. Mais jusque là, il n'y a pas de
problème.
Dans ma page default.asp pour utilisateur, j'ai le code suivant :
<!--#include file="./secure.inc"-->
<html>
<head><title>Shanti - Menu Sponsors</title>
<LINK REL=STYLESHEET TYPE='text/css' HREF='./rbl_1.css'>
<%Public MaVar as String %>
</head>
<body bgcolor=white>

<CENTER>
<TABLE WIDTH="90%"><TR><TD class="p2">
<H1><font size="4">Bienvenue dans la base de données de Shanti</font></H1>
</TD></TR></TABLE>
</CENTER>
<P>

<A NAME="_0">
<HR>
<CENTER>
<TABLE WIDTH="90%"><TR><TD class="p2">
<H2><b><font size="5">Menu Général des Sponsors</font></b></H2>
<UL>
<li><A HREF="#_1">Informations sur votre enfant</A></li>
<li><A HREF="#_1B">Sélection des données du Parrain</A></li>
<li><A HREF="#_2">Données sur les écoles des enfants</A></li>
<li><A HREF="#_3">Statistiques sur la Fondation Shanti</A></li><br><br>
<li><A HREF="#_4">Quitter le menu Général des Sponsors</A></li>
</UL>
<P ALIGN="RIGHT"><TABLE CELLPADDING=0 BGCOLOR="#FFFFFF"><TR><TD>
<% if Session("login") < 1 Then
response.write "<b><small> Status - NOT Logged</small></b>"
else
MaVar = Request.cookies("info1")("sData")
response.write "<b><small>User : </small></b>" & MaVar & "<b><small>
Status - Logged</small></b>"
End if
%>
</TD></TR></TABLE></P>
</TD></TR></TABLE>
<P>

<A NAME="_1"><BR>
<TABLE WIDTH="90%"><TR><TD class="p2">
<H2><b><font size="4">Informations sur votre enfant</font></b></H2>
<P class="p2">
Cette partie vous présente toutes les informations que nous possédons dans
notre base de données concernant l'enfant que vous parrainez.
Si vous constatez une erreur ou un manque, n'hésitez pas à nous le faire
savoir. <a
HREF="http://www.shanti-india.ch/cgi-bin/New_Pages_acces_enfants_Sponsors.asp">Pour visualiser les données, cliquez ici</a>
</P>

<P ALIGN=RIGHT><A HREF="#_0">Retour Index</A>
</TD></TR></TABLE>
<P>
..............

Dans cette page, j'ai déclaré <%Public MaVar as String %> dans le HEAD.
Ca fonctionne aussi.
Mais quand je clique sur la HREF, je n'arrive pas à obtenir le contenu de
"MaVar" dans ACCESS.
3Stone m'a proposé d'utiliser une fonction dans un module d'ACCESS. Voici la
fonction :
Public MaVar As String

Public Function sData1() As String
sData1 = MaVar
End Function
et la, c'est la catastrophe..... je reçois le message : Function sData1 non
définie dans l'expression.

Voilà, si tu as une idée pour sortir de cette impasse, c'est vraiment avec
plaisir.

Merci pour ton aide. et meilleures salutations.


Avatar
Bill2
Poun1 wrote:
savoir. <a
HREF="http://www.shanti-india.ch/cgi-bin/New_Pages_acces_enfants_Sponsors.asp">Pour
visualiser les données, cliquez ici</a> </P>


si je comprend bien, c'est ce lien que tu cliques, et dans cette page, tu
dois lister les infos de la base correspondant à ce que tu as en BDD ?

si oui, alors dans le lien, il faut passer la paramètre en "querystring" :
<a href="MonAdresse/MaPage.asp?MonParam=<%=MaVar%>">cliquer ici</a>

et dans cette page, tu récup la variable :
<%
public MaVar
MaVar=request.QueryString("MaVar")

Ensuite tu fais ta requete :
Requete="select blabla from table where MonChamp like '" & MaVar & "';"

tu crées ton recordset avec cette requete (en utilisant la connexion à la
base que tu as déjà du créer avant)
et ensuite tu parcours le recordset pour afficher les infos :

do while not MonRS.eof
'affichage des infos

MonRS.MoveNext
loop
%>
--
Bill2, http://trombi.host-web.net/Consult/Details.asp?Id
www.chatxp.fr.st

Citation : L'éternité, c'est long, surtout vers la fin !

Avatar
Poun1
"Bill2" wrote:

Poun1 wrote:
savoir. <a
HREF="http://www.shanti-india.ch/cgi-bin/New_Pages_acces_enfants_Sponsors.asp">Pour
visualiser les données, cliquez ici</a> </P>


si je comprend bien, c'est ce lien que tu cliques, et dans cette page, tu
dois lister les infos de la base correspondant à ce que tu as en BDD ?

si oui, alors dans le lien, il faut passer la paramètre en "querystring" :
<a href="MonAdresse/MaPage.asp?MonParam=<%=MaVar%>">cliquer ici</a>

et dans cette page, tu récup la variable :
<%
public MaVar
MaVar=request.QueryString("MaVar")

Ensuite tu fais ta requete :
Requete="select blabla from table where MonChamp like '" & MaVar & "';"

tu crées ton recordset avec cette requete (en utilisant la connexion à la
base que tu as déjà du créer avant)
et ensuite tu parcours le recordset pour afficher les infos :

do while not MonRS.eof
'affichage des infos

MonRS.MoveNext
loop
%>
--
Bill2, http://trombi.host-web.net/Consult/Details.asp?Id
www.chatxp.fr.st

Citation : L'éternité, c'est long, surtout vers la fin !



Bonjour Bill2,


Merci beaucoup pour ton aide.
Grâce à tes explications, j'ai réussi à sortir de cette impasse.
Ca fait vraiment plaisir quand ca fonctionne.

Enocre milles mercis et meilleures salutations.