OVH Cloud OVH Cloud

comment recuperer une variable qiu se trouve ailleurs ?

7 réponses
Avatar
Jean-Marc Dhainaut
Bonjour, comment, depuis FREE par exemple, recuperer une variable d'un
script qui se trouve dans une autre base chez un autre de mes hebergeurs.
J'ai essayé par un include, mais ça ne fonctionne pas, le contenu de la
variable est vide. Merci pour vos reponses.

7 réponses

Avatar
Jean-Marc Dhainaut
Depuis FREE je ne peux pas me connecter à la base de mon hebergeur "OVH" les
identifiants SQL passent pas et c'est assez logique puisque le script est
chez FREE et non OVH (mon hebergeur).
Avatar
Jedi121
Jean-Marc Dhainaut wrote:
Depuis FREE je ne peux pas me connecter à la base de mon hebergeur
"OVH" les identifiants SQL passent pas et c'est assez logique puisque
le script est chez FREE et non OVH (mon hebergeur).


Et surtout qu'OVH indique dans ses FAQ :
http://www.ovh.com/fr/support/faq/specifique/index.cgi?do=view&sct=&plan`gp&categorie½&.submit¯ficher+les+questions&wrep=Questions+et+r%E9ponses&.cgifields=wrep&.cgifieldsÊtegorie
R: Vous ne pouvez pas accèder directement au serveur sql. Il faut
obligatoirement passer par votre site. Si vous essayez de connecter le serveur à
partir de chez vous, vous aurez l'erreur suivant:
Warning: MySQL Connection Failed: Host "ip.votre.connexion" is not allowed to
connect.
En effet, uniquement nos serveurs sont autorisés à se connecter sur les serveurs
sql. C'est une sécurité exigé et imposé par MySQL.

Avatar
kMoog
Oui, parce que le fopen avec url est désactivé sur Free, comme sur la
plupart des FAI.

Par contre, s'il s'agit de communiquer avec un site sur OVH, cela ne posera
aucun problème avec les fonctions fsock...
On suppose que tu as une page PHP sur OVH qui lance une requête mySQL et qui
renvoit le résultat "à l'écran" (echo "Mon Resultat")
On appellera cette page "MaRequete.php" et on va supposer quu'elle est à la
racine de ton serveur Web.

function Call_MaPageRequete() {
$vSite = "www.NomDeMonSite.com" ;
$vMsg = "GET /MaRequete.php HTTP/1.1rn";
$vMsg .= "Host:".$vSite."rnrn";
$vData = "" ; // C'est dans cette variable que l'on va récupérer les
donées.

// On ouvre la connection Socket en TCP (port 80) et on laisse 10
secondes au site pr qu'il réponde.
$vFd = fsockopen( $vSite, 80, $vTimeout );
if ($vFd) { // Connecté...
fputs($vFd,$vMsg) ; // On envoi la requête de lecture de la page.
while($vBuff=fgets($vFd,256)) $vData .= $vBuff ; // On récupère les
données.
fclose($vFd) ; // On ferme la connection Socket.
}
// Il ne reste plus qu'à lire les données dans $vData.
// Attention ! $vData contient alors des entêtes du serveur appellée
qu'il faut donc supprimer.
// Pour comprendre, il suffit déjà d'afficher le résultat.
echo $vData ;
}

"Jedi121" a écrit dans le message de news:
3f6db640$0$28881$

Insérer une page sur l'hébergeur source dont le code renvoit l'info.
Depuis la cible, lancer un fopen() et récuppérer l'info.
Mais j'ai essayé cette technique sur Free et ça ne veut pas fonctionner
alors

que chez d'autres hébergeurs ça passe...

Attention, le contenu de la variable est donc accessible à tout le monde!
Aucune

sécurité n'est présente dans ce procédé.


Avatar
Thibaut Allender
"Jedi121" wrote in message
news:3f6dc974$0$28896$
R: Vous ne pouvez pas accèder directement au serveur sql. Il faut
obligatoirement passer par votre site. Si vous essayez de connecter le
serveur à

partir de chez vous, vous aurez l'erreur suivant:
Warning: MySQL Connection Failed: Host "ip.votre.connexion" is not allowed
to

connect.
En effet, uniquement nos serveurs sont autorisés à se connecter sur les
serveurs

sql. C'est une sécurité exigé et imposé par MySQL.


"C'est une sécurité exigé et imposé par MySQL" ils vont un peu vite en
besogne chez ovh... c'est une sécurité imposée par OVH, pas par mysql...
mysql, il peut accepter des connexions de n'importe quel host, sauf si on
lui demande de n'accepter que "localhost", ce qui est souvent le cas dans
une config hebergeur php/mysql

a+

--
+ thibaut allender // web design + php dev + digital photo
+ http://www.capsule.org

Avatar
Olivier Noel

Oui, parce que le fopen avec url est désactivé sur Free, comme sur la
plupart des FAI.


Euh... J'utilise fopen pour parser des fichiers RSS sur free (cf.
<URL:http://secworld.free.fr/news.php/>.
Donc fopen n'est pas désactivé sur free.

Un peu de lecture aussi :
<URL:http://www.giromini.org/usenet-fr/repondre.html>

--
J'suis sûr que t'as fait EX-PRÈS de faire tenir ça en 4 lignes
et pas en 3. EX-PRÈS.
-+- SP in GNU : Le GNU, il ne passera pas par moi. Enfin presque. -+-

Avatar
Jedi121
Olivier Noel wrote:
Euh... J'utilise fopen pour parser des fichiers RSS sur free (cf.
<URL:http://secworld.free.fr/news.php/>.
Donc fopen n'est pas désactivé sur free.


Mais tu l'utilises de ton propre compte vers ton propre compte, pas avec une URL
à l'extérieur si?
Moi ça ne marche pas alors que le même code (strictement identique) passe chez
un autre hébergeur...

Et l'utilisation de fsock() de kMoog semble fonctionner (j'ai pas fini
d'implémenter).

Avatar
Olivier NOEL

Olivier Noel wrote:
Euh... J'utilise fopen pour parser des fichiers RSS sur free (cf.
<URL:http://secworld.free.fr/news.php/>.
Donc fopen n'est pas désactivé sur free.


Mais tu l'utilises de ton propre compte vers ton propre compte, pas avec
une URL à l'extérieur si?
Moi ça ne marche pas alors que le même code (strictement identique)
passe chez un autre hébergeur...


En fait, j'ouvre un fichier RSS (mozillazine, linuxfr, linuxfrench, ...)
que je parse pour afficher les news sur mon site avec une version dérivée
du parse-phpinfo.php de J.P dezelus (je ne sais plus où il y a des
accents, désolé...).

--
Tu viens donc de traiter 120 votants de neuneux.
Note que je suis d'accord avec toi, mais sache que cette position est
relativement technique à assumer avec style, petit scarabée.
-+- TP in GNU : Le style c'est l'homme, le reste est neuneueterie -+-