Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/12/2010, 12h04   #1
Invité de passage
 
Inscription : décembre 2010
Messages : 2
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 2
Points : 1
Points : 1
Par défaut Access ne peut accéder à une page web

Bonjour à tous,

Je développe une application sous access permettant de gérer les abonnés d'un site internet. La synchronisation entre la base access et le site s'effectue manuellement à partir de la base.
Pour ce faire j'utilise un objet MSXML2 qui envoie une requete POST en https à une page de mon site avec le code suivant :

Code :
1
2
3
4
5
6
7
8
9
10
11
 
Dim objHTTP As Object
Dim envoi As String
 
Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP.3.0")
 
Url = "https://www.monsite.fr/synchro.php"
objHTTP.Open "POST", Url, False
objHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
envoi = "mes données"
objHTTP.send (envoi)
Tout ceci fonctionne correctement sur ma machine et la synchronisation des donnée s'effectuent comme il faut.
En revanche chez les clients la procédure send() renvoi l'erreur suivante : "A connection with the server could not be established".
Leurs machines font parties d'un réseau avec firewall, restriction d'accès etc etc ... Notamment l'utilisation d'un port différent du 443 pour les connexions https.

J'ai donc deux questions :
- puis je spécifier à Access le port qu'il doit utiliser pour effectuer la connexion (ou tout autre paramètre d'ailleur)?
- ayant vérifié tout problèmes de version (access 2002 sp2), de références ou encore que mes clients aient bien accès à la page synchro.php en https avec leur navigateurs (via un formulaire héberger sur un autre serveur), et ceux ci m'assurant qu'il n'y a "a priori" aucune restriction au net pour access je ne sais tout simplement plus ou chercher ... auriez vous une idée ?

Merci d'avance
paulguy est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/12/2010, 11h49   #2
Invité de passage
 
Inscription : décembre 2010
Messages : 2
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 2
Points : 1
Points : 1
AUTO REPONSE

Après quelques recherches j'ai finalement trouvé une solution, et une fois mettre rendu compte que mes clients utilisent un proxy (que de temps perdu par manque d'informations ...).
Je n'utilisais donc pas la bonne référence MSXML, qui une fois passée en 6.0, m'a permis d'utiliser la méthode setProxy.

Sa donne donc ceci au final :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
Dim objHTTP As Object
Dim envoi As String
   
Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP.6.0")
        
Url = "https://www.monsite.fr/synchro.php"
objHTTP.Open "POST", Url, False
objHTTP.setProxy 2, "xxx.xxx.xxx.xxx:port"
objHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
envoi = "mes données"
objHTTP.send (envoi)
paulguy est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h39.


 
 
 
 
Partenaires

Hébergement Web