Aller au contenu

Inclure un script distant


lorik

Sujets conseillés

Bonjour,

Au menu aujourd'hui, 'travailler avec des scripts distants' !

J'ai un site A, qui doit appeller un script distant B (autre serveur et autre nom de domaine).

Je suis passé par un <img src monscriptB>, et ma fois, ça baigne !. Sauf que jusqu'ici, mon <imgsrc> etait placé dans une page HTML.

Et aujourd'hui, je voudrais faire la même chose à partir d'une page 100% php, sans html.

Et là, mon <img src> ne passe pas (même en le plaçant hors des <?php ?>).

Qu'a cela ne tienne, on ne va pas se laisser abattre pour si peu ! je tente de passer par un

include ("http://www.domaineB/scriptB.php?paramettres">

Et là, erreur serveur :

Warning: main(): URL file-access is disabled in the server configuration in /home/http...

Je suis pas sur, mais je pense que la config de php ne doit pas permettre d'appeller de script. j'attends la réponse de mon hebergeur, puisque je n'ai pas accès au phpinfo, mais je me doute de la réponse.

D'ou ma question :

<img src...> : marche pô !

include... : marche pô !

Quelqu'un connaitrait un truc qui marche ?

Par avance merci.

Lien vers le commentaire
Partager sur d’autres sites

Heu, finalement, pas si simple !

Effectivement ça marche.... à peu prèt ! En fait, la plupart du temps, avec l'echo, ça me bouffe une partie des variables passées dans le <img src...>.

Pas tout le temps, mais souvent, alors que c'est toujours la même chaine qui est passée. Seuls changent 2 variables($ca_reel et $var_uxp), mais qui restent de la même longueur et du même type...

$tag="<img height=1 width=1 border=0 src='http://www.monsite.com/dossiers/test.php?id=123&action=e6216de2d79832a9fb2baf3b9e3b9785&ca=$ca_reel&uxp=$var_uxp'>";

echo $tag;

Ca coupe après '..&ca="

L'url reste assez courte, et ce qui est bizarre, c'est que ça ne se produit pas quand j'utilise la version html du tag.

:boude:

Lien vers le commentaire
Partager sur d’autres sites

A tout hasard, essaie de remplace les & pas l'entité html : &

$tag="<img height=1 width=1 border=0 src='http://www.monsite.com/dossiers/test.php?id=123&action=e6216de2d79832a9fb2baf3b9e3b9785&ca=$ca_reel&uxp=$var_uxp'>";

echo $tag;

J'ai peu d'expéricence sur ce genre d'inclusion de script distant...

Lien vers le commentaire
Partager sur d’autres sites

Merci TheRec... mais pas mieux !

Par contre j'ai essayé un truc qui semble marcher (mais il me faut plus de résultats pour être sur...) :

Il semblerai que ce soit la construction de mon url qui pose problème :

Au lieu de :

$tag="<img height=1 width=1 border=0 src='http://www.monsite.com/dossiers/test.php?id=123&action=e6216de2d79832a9fb2baf3b9e3b9785&ca=$ca_reel&uxp=$var_uxp'>";

echo $tag;

J'ai essayé :

$tag="<img height=1 width=1 border=0 src='http://www.monsite.com/dossiers/test.php?id=123&action=e6216de2d79832a9fb2baf3b9e3b9785&ca=".$ca_reel."&uxp=".$var_uxp."'>";
echo $tag;

Sur mes tests ça marche, sans que je sache pourquoi : Je verifiais deja le contenu de $tag, et cela me semblait correct.

Je confirme dès que possible (mais vous etes pas pressés je suppose ? :P )

Lien vers le commentaire
Partager sur d’autres sites

Il est logique que cela marche, parce que les simples quotes utilisées dans ta requête précédente empêchaient Php d'interpréter les variables. Tu perdais donc leur valeur ;)

Dan

Lien vers le commentaire
Partager sur d’autres sites

Merci Dan, mais... non : Comme je l'ai dit je vérifiais la valeur de $tag avant le echo, et le résultat était correct.

Je pense à autre chose : La page dans laquelle figure le 'echo $tag' est un script php qui n'envoie rien au navigateur : Il est lui mémé appellé par une page X, fait son boulot, mais rien n'est affiché : Il redirige ensuite sur une page 'normale'..

Dans ce cas, comment se comporte un "echo" ?

Parce que mes tests sont fait avec une page qui s'affche et ça marche. Mais pas avec cette page 'intermediaire'.

Lien vers le commentaire
Partager sur d’autres sites

Bonjour, bonjour,

Je confirme que le problème doit se situer dans le echo :

Lorsque ma page dans laquelle est inséré le 'echo' est appellée via un 'lien caché', (donc ne s'affiche pas), le tag dans le 'echo' ne marche pas.

Lorsque j'appele directement cette même page, en tapant l'url dans la barre d'adresse, le navigateur m'affiche une page blanche (normal), mais dans ce cas, le tag fonctionne.

J'en déduit que le 'echo' ne marche pas si rien n'est envoyé au navigateur. Comme 'echo' est interprété par php et pas par le navigateur, cela pourrait provenir de la technique d'appel de la page dans laquelle figure le echo :

En fait cette page est appelée par un organisme de paiement pour confirmer au site l'acceptation d'un paiement. A aucun moment dans la procédure il n'est prévu un affichage. Et je ne sait pas (mais je peux savoir) en quel language est ecrit le script qui appele ma page.

Quelqu'un aurait déja vu ça ? Y a t il une alternatique à écho ? je vais essayer avec print, mais je pense que le résultat sera le même.

Merci de votre aide, je patauge grave :wacko:

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...