Require(http://...) et variables

fraid -  
 fraid -
Bonjour,
je souhaite exécuter un script sur mon site en faisant require(script.php); sur un site distant...
mais à priori cela pose ds problème au niveau des variables par exemple :

script.php :
<?
echo"$variable";
?>

page.php :
<?
$variable="abc";
require(http://www.monsite.com/script.php)
?>

et cela ne marche pas, avez vous une idée ?

2 réponses

Reivax962 Messages postés 3742 Statut Membre 1 011
 
Bonjour,

Si le site distant est équipé d'un serveur php, le serveur Apache va rediriger la requête vers le processeur php, qui va interpréter le fichier, exactement comme quand tu te connectes, avec ton navigateur, à http://monsite/script.php.

Donc ce que le serveur distant va renvoyer, c'est une chaîne vide car c'est lui qui lit le script, et que $variable, il ne connaît pas.

Donc ce que ta page.php va obtenir, c'est en fait une chaîne vide :
<?
$variable="abc";

?> 

Donc effectivement, rien ne se passe.

Comment éviter ça ? En ne passant pas par le serveur php.
La meilleur solution serait d'utiliser un serveur ftp, qui renverra le fichier tel quel et non le fichier interprété par php.
(Imagine, sinon, tu pourrais récupérer comme ça le code source de n'importe quel site web ! Avec les mots de passe aux bases de données, le détails des traitements effectués, etc. : ce serait pas une faille de sécurité, mais un TROU NOIR de sécurité !!)
0
fraid
 
Merci de votre réponse.

mon but est en réalité de protéger mon fichier script.php.

le problème donc si je le met sur un ftp puis appelé d'une page, on peut onc récupérer le fichier script.php grace aux codes de connexion du ftp fournis dans la page en questions...

avez vous une idée ?
0