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 :

Preuve que le readfile n'est pas exécuté ?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 495
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 495
    Billets dans le blog
    1
    Par défaut Preuve que le readfile n'est pas exécuté ?
    Bonsoir,

    j'ai un doute qui nécessite une confirmation ; je voudrais savoir si un readfile est bien exécuté ; comme à cet endroit l'affichage ne marche pas, j'effectue une trace dans une table MySQL. Je voudrais savoir si ce que j'ai fait est juste :
    code appelant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    readfile("testreadfile.php");
    Contenu du readfile :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?php	
    $texte="ici testreadfile";
    $sql= "INSERT into `espion` (_sql) VALUES('".ES($texte)."')";
    $sql = stripslashes($sql);
    $result = mysql_query($sql) or die(mysql_error());
    ?>
    La connexion à la base MySQL est faite dans le code appelant, le nom "_sql" est historique et la fonction ES (
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function ES($truc)
    {
    $truc=mysql_real_escape_string($truc);
    return $truc;
    }
    ) est incluse dans le code appelant. Si c'est bon, ça prouve que le readfile n'est pas exécuté, vu qu'il n'y a rien dans la table MySQL.

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Pourquoi
    à cet endroit l'affichage ne marche pas
    ?

    Si le but est juste de debuguer, tu peux utiliser die() c'est beaucoup plus simple, rapide à positionner et fiable.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    je voudrais savoir si un readfile est bien exécuté
    Ote moi d'un doute... tu essaye d'EXECUTER le contenu du fichier que tu met dans le readfile ?

    http://fr.php.net/Fr/readfile

    En aucun cas le readfile "execute" le contenu php du fichier :/

  4. #4
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 495
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 495
    Billets dans le blog
    1
    Par défaut
    Pourquoi
    à cet endroit l'affichage ne marche pas
    ?

    Si le but est juste de debuguer, tu peux utiliser die() c'est beaucoup plus simple, rapide à positionner et fiable.
    Je ne saurais expliquer, c'est juste un constat. En fait, j'utilise un plugin jquery, dont l'une des lignes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    upload_url: "upload-file.php"
    fait appel à un fichier PHP, mais quand celui-ci est appelé, l'affichage n'est pas possible (et ne sais pas pourquoi, mais par exemple, les echo ne donnent rien).
    Et sinon,comment utiliser die ?

    Ote moi d'un doute... tu essaye d'EXECUTER le contenu du fichier que tu met dans le readfile ?

    En aucun cas le readfile "execute" le contenu php du fichier :/
    Je corrige : je n'aurais pas dû dire "exécuter", mais "interpréter", mais à part ça, je ne vois pas de problème, car j'ai déjà utilisé readfile avec des fichiers contenant du code html et du js, et ça se passait bien...

  5. #5
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    Citation Envoyé par laurentSc Voir le message
    Je corrige : je n'aurais pas dû dire "exécuter", mais "interpréter", mais à part ça, je ne vois pas de problème, car j'ai déjà utilisé readfile avec des fichiers contenant du code html et du js, et ça se passait bien...
    Ben si tu lis la description de readfile tu t'apercois qu'il ne parle nulle part d'"interprétation" du code PHP a l'intérieur.

    C'est normal que ca marche avec de l'html et du JS, l'html et le JS sont envoyé directement au navigateur - qui les interprètent.

    Le code PHP, lui, a besoin d'être interprété par le SERVEUR php, tu ne peux pas te contenter de l'afficher. Donc readfile ne doit pas être utilisé ici.

  6. #6
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 495
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 495
    Billets dans le blog
    1
    Par défaut
    Bon d'accord, mais si je mets ds le readfile une page html qui contient une iframe qui elle, pointe sur le fichier PHP (grosse bidouille), cela pourrait-il marcher ?

  7. #7
    Membre Expert

    Homme Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 249
    Par défaut
    Oui, le code va être executé mais tu ne pourras pas récupérer le retour car il s'executera dans une 2eme requete HTTP.

    Je pense qu'il faudrait déjà que tu comprennes comment fonctionne PHP :

    Tu as un client avec un navigateur Web
    Il envoi une requete HTTP (qui contient l'URL = L'adresse)
    Le serveur Web (en général Apache) récupère la requête HTTP
    Le serveur Web retrouve le fichier demandé par l'utilisateur dans la requête
    Le serveur Web détermine que le fichier doit être parsé par PHP avant d'être renvoyé (il se base sur l'extension et les Mime-type configurés dans le serveur)
    Le serveur Web envoi le fichier a PHP
    PHP s'exécute et renvoi du code HTML/JS ou autre au serveur Web
    Le serveur Web renvoi le code HTML/JS au navigateur
    Le navigateur recoit le code HTML/JS
    Le navigateur interprète et exécute le code HTML/JS de la page sur le poste client.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 01/04/2008, 14h22
  2. Réponses: 2
    Dernier message: 01/11/2006, 23h36
  3. Réponses: 10
    Dernier message: 31/08/2006, 15h57
  4. Tester que le fichier n'est pas un fichier binaire
    Par fedfil dans le forum Entrée/Sortie
    Réponses: 2
    Dernier message: 21/10/2005, 18h29
  5. [VB.NET]Lancement d'un programme que s'il n'est pas lancé
    Par cyrcroix dans le forum Windows Forms
    Réponses: 3
    Dernier message: 01/06/2005, 15h05

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