IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[FTP] Include/Require un fichier à distance (utiliser les fonctions qu'il contient)


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 10
    Par défaut [FTP] Include/Require un fichier à distance (utiliser les fonctions qu'il contient)
    Bonjour,
    Dans le but de rendre disponible un programme à des personnes, mais tout en souhaitant garder le code en partie privé, j'essai de mettre en place un système où ma page principale utilise la fonction include ou require et récupère une page contenue sur mon ftp privé et donc une page à laquelle personne a pars moi n'a accès.
    Ca marche a peut près, mais je n'arrive pas a réutiliser les fonctions déclarées dans mon fichier distant, et pourtant j'arrive à l'exécuter.

    Voici le détail du code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    // Fichier stocké sur le serveur public: http://serveurpublic.fr/index.php
    <?php
    $lala=5;
    include('http://monserveur.fr/test.php');
    affichage($lala);
    ?>
    Et voici le fichier sur mon serveur privé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    // Fichier: http://monserveur.fr/test.php
    <?php
    	echo 'Ok, j\'arrive a lire le fichier distant';
     
    	function affichage($var)
    	{
    		echo 'la variable vaut : '.$var;
    	}
    }
    ?>
    Le résultat de ça:
    Ca m'affiche "Ok, j'arrive a lire le fichier distant"
    mais ca m'indique également que la fonction affichage n'est pas connue ( ligne 4 du index.php)

    Comment peut-on utiliser une fonction d'un fichier distant ?

    N'hésitez pas a me demander si vous souhaitez plus de précisions.
    Merci.
    Thomas.

  2. #2
    Membre chevronné Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Par défaut
    Bonjour,
    En principe include ou require s'utilise sur des fichiers locaux.
    Dans ton cas, tu recupere le resultat d'une requete http, soit une page web qui est le resultat interprété par le serveur distant de ton code php. Il n'y a donc plus trace de php, ni de ta fonction dans ton include, seulement le code source resultat...
    Esperant avoir eclairci ton probleme....
    Sohnic

  3. #3
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Par défaut
    pourquoi ne pas mettre ton fichier dans un dossier protege par htaccess ? plutot que sur ftp ?
    Pas de questions techniques en MP please

    Mon site perso

    Mon profil Viadeo

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 10
    Par défaut
    Tout d'abord, merci pour vos réponses.

    pourquoi ne pas mettre ton fichier dans un dossier protege par htaccess ? plutot que sur ftp ?
    Car la personne en question a acces total sur son FTP, donc la seule solution pour protéger mon code c'est de l'héberger sur un autre FTP qui, celui ci, m'appartiendra (et sur lequel je pourrais, en effet, mettre un fichier .htacces pour limiter l'acces).


    ...
    Esperant avoir eclairci ton probleme....
    Sohnic
    Oui, c'est clair, merci.
    Mais cela ne me permet pas de résoudre mon problème.
    N'y a t-il aucun moyen de récupérer le code php d'un fichier distant ? (le récupérer en mémoire pour le traiter directement, pas l'afficher sinon la aussi la sécurité de mon code n'est plus valable).

    Sinon je me demandais également de quelle facon une fonction PHP renvoi une valeur au programme PHP en lui même. Je ne parle pas de commande "return" utilisé à la fin d'un fonction, mais plutot de la facon dont sont transféré les données. Il y a peut etre moyen non ?

  5. #5
    Membre chevronné Avatar de sohnic
    Femme Profil pro
    bioinfo
    Inscrit en
    Mai 2003
    Messages
    426
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : bioinfo

    Informations forums :
    Inscription : Mai 2003
    Messages : 426
    Par défaut
    Un moyen pour contourner le probleme ?
    En simple ton include (moi je ferais plutot un fopen de l'url) envoie une chaine de caractères qui correspond au code que tu veux intégrer.
    Ou, plus compliqué et je ne saurais dire si c'est possible, tu pourrais mettre le fichier en question sous forme cryptée sur le serveur local, tu vas chercher le mot de passe avec ton include sur ton ftp, tu decryptes le fichier, puis tu l'evalues dans ton script.... tres compliqué !

    D'autant plus que je n'en vois pas l'interet, car, je suppose que le script principal (pas celui que tu veux cacher) est lisible par ton utilisateur. Qu'est-ce qui l'empeche de recupérer la ligne qui va choper ton fichier (ou le mot de passe pour le decrypter) ?

    A mon avis la solution passe plutot par la compilation. Il y a des posts a ce sujet, fais une recherche, moi je ne connais absolument pas ce domaine....

    Sohnic

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 10
    Par défaut
    ouaip, j'ai entendu parler de ZEND pour crypter du code PHP, mais je sais pas trop et vu le prix ca risque d'etre vite réglé.
    Tant pis, je vais essayer de faire autrement.
    Merci.
    Thomas.

  7. #7
    Membre émérite
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    572
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Juin 2005
    Messages : 572
    Par défaut
    Peut etre le choix d'un autre langage est il judicieux ?

    Des technologies comme axis en java permettent de mettre en place des services web qui d'après ce que j'ai vu répondraient peut etre à tes attentes.

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 10
    Par défaut
    Probablement oui, mais a pars le PHP, C++ et le bash je ne connais pas d'autres langages de programmation.
    J'ai d'ailleur déjà réalisé mon programme en C++ et je l'avais implémenté sur mon site en version CGI, mais le problème c'est que tous les hébergeurs ne permettent pas forcément d'éxécuter du CGI, c'est pourquoi je m'étais tourné vers le PHP.

  9. #9
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 14
    Par défaut Meme probleme "sappounet" :-(
    Voulant gerer des URLs identiques sur plusieurs sites, j'aurai besoin d'utiliser la fonction include ou require vers un site distant comme dans l'exemple cidessous :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php require 'http://www.monsite.fr/admin/lien.php'; ?>
    Ainsi, chaque modification enrigistré sur mon fichier lien.php sera effectif sur chacun de mes sites.

    Je rappel que mes sites sont situés dans des adresses differentes.
    Exemple : http://www.siteperso.fr ; http://www.mapage.fr ; http://www.jesuisici.fr ; ect... etc...

    Le but d'utiliser la fonction include ou require vers un site distant est justement pour ne pas à avoir à répéter les modifications de ma page lien.php sur chacun de mes sites.

    Merci pour votre aide

  10. #10
    Inactif Avatar de CR_Gio
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 195
    Par défaut
    bonsoir,

    Je ne sais pas si ca marche, mais dans le doute, peut etre que cela pourrai faire avancé le chmilblique ^^

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    // Fichier: http://monserveur.fr/test.php?pass=pswd
    <?php
      if($_GET['pass']=='pswd')
        echo 'function affichage($var)  { echo \'la variable vaut : \'.$var; }';
      else
        echo 'function affichage($var)  { }';
    ?>

Discussions similaires

  1. Réponses: 8
    Dernier message: 07/02/2011, 14h20
  2. [PHP 4] [FTP] Écriture dans un fichier à distance
    Par jules_diedhiou dans le forum Langage
    Réponses: 7
    Dernier message: 27/03/2009, 22h00
  3. Recherche dans un fichier sans utiliser les Jet drivers ?
    Par kueisaho dans le forum VBScript
    Réponses: 1
    Dernier message: 05/03/2007, 18h09
  4. Comment utiliser les fonctions d'un autre fichier?
    Par zuzuu dans le forum Général Python
    Réponses: 8
    Dernier message: 14/12/2006, 18h22
  5. Decompression d'un fichier sans utiliser les modules du CPAN
    Par choubiroute dans le forum Modules
    Réponses: 6
    Dernier message: 10/03/2006, 14h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo