Version complète: sur le forum Webmaster Hub : Utiliser une fonction située sur serveur distant
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > PHP
tomlelab
Salut les rois du php.

Je veux ramener des données de ma base de données située sur un seveur A à partir de mon serveur B ( 2 hébergements mut différents chez OVH).

J'ai essayé à l'aide d'include d'un fichier de B contenant une fonction, mais la fonction n'est pas reconnue.

Est-ce possible en fait ??

Merci
skale
Salut,

à confirmer, mais j'ai l'impression que les hébergements mutu ont un firewall qui bloquent l'accès HTTP au PHP. Impossible de récupérer les données, pas de get_meta_tags et de la même manière il n'est pas possible d'afficher un flux RSS. Dommage !

Mais peut-être que je me trompe.
Anonymus
Bonjour,

Oui, il y a plusieurs possibilités.
Mais il faudra que tu fasses certaines modifications du coté de la fonction.
L"une de ces méthodes est de lire les données de l'autre page, en ayant soin de passer les paramètres en 'GET'. la fonction 'fopen' devrait faire l'affaire, si elle est reconnue (pour les serveurs distants, ce qui n'est pas toujours le cas)
L'autre est de faire un include, de la meme facon (passer les parametres en 'GET', et récupération des données. Idem, sauf un include au lieu du trio 'fopen'.

Mais tu ne peux lire la fonction en appelant juste la page. Elle te renverra le résultat du parser php, et si la fonction n'est pas prévue pour renvoyer quelque chose à un serveur distant, ce ne sera pas possible.

Anonymus.
Dan
Dans le cas des hébergements mutualisés OVH, l'accès n'est possible aux bases qu'au départ des sites.
Si un site A (avec une base A) souhaite accéder à la base B du site B, ce ne sera pas permis.
Question de sécurité wink.gif

La seule solution passe par une sauvegarde locale de la base A, suivie d'un import dans la base B.
Knives
il y a la possibilité de créer des sockets pour cela ...
Portekoi
CITATION(Knives @ jeudi 07 avril 2005, 15h50)
il y a la possibilité de créer des sockets pour cela ...
*


La mer mouille....

Tu peux pas être plus clair pour la personne lamdba qui ni connais rien? IMSTP6.gif

smile.gif

J'ai cherché sockets sur OVH mais il parle de php.ini en chageant je sais pas trop quoi...

A plus

Portekoi
Knives
CITATION(portekoi @ jeudi 07 avril 2005, 14h58)
Tu peux pas être plus clair pour la personne lamdba qui ni connais rien?  IMSTP6.gif

*


LOL ... excuse moi ...

http://ch2.php.net/sockets

enfin c'est pour une communication entre plusieur serveur par exemple ...
Dan
CITATION(Knives @ jeudi 07 avril 2005, 15h50)
il y a la possibilité de créer des sockets pour cela ...
*
Si mysql n'est pas configuré pour permettre les interrogations distantes, il ne répondra pas non plus.
Ce serait trop simple, non ? wink.gif
skale
CITATION(Knives @ jeudi 07 avril 2005, 15h50)
il y a la possibilité de créer des sockets pour cela ...

CITATION(Dan @ jeudi 07 avril 2005, 16h32)
Si mysql n'est pas configuré pour permettre les interrogations distantes, il ne répondra pas non plus.
Ce serait trop simple, non ? wink.gif

mais alors le firewall est configuré pour empêcher les connexions distantes sur mysql ou pour empêcher PHP de communiquer vers l'extérieur ? pour plus de sécurité je dirais les deux.
tomlelab
Salut merci à tous,
la solution d' Anonymous va m'aider à me dépatouiller.

Bonne journée.
destroyedlolo
Une autre solution est d'utiliser une sorte de web service qui renvoie le contenue de la database ...

Mais bon, le plus simple c'est quant meme d'utiliser un cron qui exporte la database, ftp sur la seconde machine et autre cron pour la charger ...
Anonymus
Enfin, il te reste le XML, qui... ben ca tombe bien, ca sert à ca biggrin.gif

wink.gif
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.