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

JavaScript Discussion :

Récupérer le contenu d'un fichier en javascript?


Sujet :

JavaScript

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut Récupérer le contenu d'un fichier en javascript?
    Bonjour,
    Afin de palier aux limitations des hébergeurs par rapport aux fonctions file_get_contents() et fsocket() je souhaite remplacer le traitement en php suivant par du javascript (ou peut être ajax car je ne suis pas sur qu'un traitement de fichier soit possible en JS:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if($Note=file_get_contents("http://".$url."/getnote?u=".MD5($ThisUrl)."&i=".$CliIp."&referer=".MD5($Referer))){
    Vous avez peut être des solutions pour moi?
    Merci d'avance.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    regarde du coté d'ajax et son responseText

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    Merci de ta réponse,
    Par contre je ne vois pas comment m'y prendre pour récupérer le contenu dans la variable $Note.
    Tu as peut être quelques pistes pour me guider?
    Merci d'avance

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    		$urlNote = "http://".$Url.$Suffix."/getnote?u=".MD5($ThisUrl)."&i=".$CliIp."&referer=".MD5($Referer);
    		echo "<script type=\"text/javascript\">
    				var xhr_object = xhr();
    				xhr_object.open("GET", $urlNote, true);
    				$note=xhr_object.responseText;
    			</script>";
     
    if($note){ ...
    }
    Voici le code utilisé dans mon script, passer des variables vers du javascript et vice versa, ça ne pose pas de problème?

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    il manque le bout de code du readystatus de ta requete, mais je ne vois pas ou il y aurait un probmème sinon ??

  7. #7
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    Ok mais est ce que le readystate c'est uniquement pour tester le statut de l'objet, ça ne devrait pas poser problème si pour l'instant je ne le met pas?

    En tout cas la j'ai un parse error sur la ligne xhr_object.open("GET", $urlWikioNote, true); et je ne vois pas le pb.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php   
            $urlWikioNote = "http://url/readme.txt";
                    echo "<script type=\"text/javascript\">
                                    var xhr_object = xhr();
                                    xhr_object.open("GET", $urlWikioNote, true);
                                    $note=xhr_object.responseText;
                            </script>";
     
     
            if($note){
            echo $note;
            }                       
    ?>

  8. #8
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    si parceque si tu attribues à la variable $note un truc qui n'est pas encore revenu du serveur la variable sera vide
    c'est uniquement sur le readystatechange si le status vaut 4 que tu dois mettre le responseText dans la variable

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    Même en rajoutant le readeState, j'ai le parse error, le problème vient de la ligne d'avant...

    Parse error: syntax error, unexpected T_STRING, expecting ',' or ';'

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    <?php	
    	$urlWikioNote = "http://mook.perso.free.fr/readme.txt";
    		echo "<script type=\"text/javascript\">
    				var xhr_object = xhr();
    				xhr_object.open("GET", $urlWikioNote, true);
    				if(xhr_object.readyState == 4){
    				$note=xhr_object.responseText;
    				}
    			</script>";
    
    
    	if($note){
    	echo $note;
    	}			
    ?>

  10. #10
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $urlWikioNote = "http://mook.perso.free.fr/readme.txt";
    		echo '<script type=\"text/javascript\">'."\r\n";
    		echo '		var xhr_object = xhr();'."\r\n";
    		echo '		xhr_object.open("GET", '. $urlWikioNote .', true);'."\r\n";
    		echo '		if(xhr_object.readyState == 4){'."\r\n";
    		echo '		$note=xhr_object.responseText;'."\r\n";
    		echo'		}</script>';

  11. #11
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    Plus de Parse error cette fois-ci mais on dirait que ma variable $note reste vide.
    Certainement parce que mon echo $note est interprété avant la récupération du contenu du fichier, du coup la variable est vide.

    Je ne vois pas comment contourner le problème.

  12. #12
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    ton url wiki turc là elle est sur ton serveur ??

  13. #13
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    Non, le fichier php n'est pas stocké sur le même serveur que l'url.

  14. #14
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    alors tu devras auparavant faire un include de la page de l'url dans ta page php ...
    ajax ne peut sortir du domaine

  15. #15
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    Et si je sépare mon code js du php et que je place le script .js sur le même serveur que l'url appelée ça peut fonctionner?

  16. #16
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    si le script ajax est sur le même domaine que la page appélée, oui ça devrait passer ...

  17. #17
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    Et donc si je met ce code js dans un fichier sur le serveur,
    comment j'appelle le contenu pour le mettre dans une variable dans mon fichier php (qui lui n'est pas sur le même serveur...)?

    Est ce qu'un code dans ce style inséré dans mon script php peut fonctionner?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $note = <script type="text/javascript" src="code.js"></script>
    Merci pour ta patience...

  18. #18
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 643
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 643
    Points : 66 669
    Points
    66 669
    Billets dans le blog
    1
    Par défaut
    heu non

    soit tu mets le js dans une page html sur le même serveur que l'url
    et sur la page appelante tu mets un ifrmame avec pour src cette page


    soit tu récupères le contenu de la page url au moyen de php sur le serveur de la page appelante

  19. #19
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    43
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 43
    Points : 26
    Points
    26
    Par défaut
    En fait à la base je passais par un file_get_contents() pour récupérer le contenu de l'url distante mais je ne veux justement pas faire cette récup avec PHP et ses fonctions file_get_contents() ou fsocket() , je ne sais pas si tu voyais ces fonctions en parlant de PHP...

    Si c'est le cas je vais voir plutôt avec la première solution.

Discussions similaires

  1. [File] récupérer le contenu d'un fichier
    Par kendras dans le forum C
    Réponses: 31
    Dernier message: 19/06/2006, 12h33
  2. Réponses: 5
    Dernier message: 10/04/2006, 12h07
  3. Aide : Décoder, récupérer le contenu d'un fichier .pst
    Par ATTIA dans le forum API, COM et SDKs
    Réponses: 10
    Dernier message: 23/03/2006, 16h11
  4. Comment récupérer le contenu de plusieurs fichiers textes ?
    Par calimero2611 dans le forum Langage
    Réponses: 9
    Dernier message: 19/02/2006, 15h45
  5. [ethereal] récupérer le contenu d'un fichier envoyé ?
    Par in dans le forum Développement
    Réponses: 1
    Dernier message: 19/06/2005, 15h44

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