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 :

[Système] Ouvrir une URL


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut [Système] Ouvrir une URL
    Hello.

    J'essaye d'ouvrir une URL qui me permet de me connectyer sur un site e-commerce de vente et d'achat. Or moi j'aimerai me connecter de facon automatique sur cette url pr vendre un livre (ds lakel jai rajouter mon login+mdp). Qd je tape "http://www.site.com/perso/vendre.asp?id_livre=22886&login=toto&mdp=monmotdepasse" dans mon navigateur alors effectivement ca marche : il se loggue automatiquement et me dirige avec mon compte, sur la page de vente de ce livre...

    Le pb , c que lorsque je tente de faire un fopen sur cette adresse ben apparement ca marche po ?!?

    voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     $filename1 ="http://www.site.com/perso/vendre.asp?id_livre=22886&login=toto&mdp=monmotdepasse"; 
        $handle1 = fopen ($filename1, "r" ); 
      if ($handle1)  
      {  
       $buffer1=""; 
       while (!feof ($handle1))  
        $buffer1 .= fgets($handle1, 4096); //tt le fichier est contenue ds la variable $buffer 
       fclose ($handle1); 
       echo "<br>le buffer est : ".$buffer1."<br>"; 
      }
    Et bien la, ca affiche rien!! c chelou!

    j'ai regardé et $handle1 est egale a false ... kkun a la solution??

  2. #2
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Peut etre que ca vient directement du fait qu'il y ait des paramètres

    Comment récupérer le contenu d'un fichier ?

    Testes file_gets_content qui serait peut etre mieux adapter à la situation

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut
    j'ai testé mais ca marche po ?!

  4. #4
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    j'ai pas bien compris tu veux aller à l'url ou ouvrir un fichier?

    Sinon, c'est assez simple, tu fais un lien avec tes paramètres, genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="http://www.site.com/perso/vendre.asp?id_livre=22886&login=toto&mdp=monmotdepasse">Ton lien</a>

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut
    en fait je veut faire un fopen en php sur ce lien ms qd je le fait bah ca ouvre rien...

    c relou!

  6. #6
    Membre habitué Avatar de Davboc
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    266
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 266
    Points : 168
    Points
    168
    Par défaut


    si je ne m'abuse fopen sert à ouvrir un fichier, pas un lien...


    edit : autant pour moi... Fopen peut ouvrir la cible d'une URL...

    http://fr2.php.net/fopen

    Il y a par contre des restrictions au niveau de la config du serveur

  7. #7
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    l'ouverture du fichier ou même d'une url est possible avec fopen (fais un petit tour dans la faq php )

    Le problème ici c'est que les fonctions recherchent le fichier vendre.asp?id_livre=22886&login=toto&mdp=monmotdepasse et non le fichier vendre.asp avec les paramètres que tu lui passes. C'est pour cela que je dis que file_get_contents est parfait pour cette situation. Je le dis car j'ai déjà essayé pour récuperer le résultat d'une recherche.

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut
    Ok mais pourtant, qd je fais ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $contents = file_get_contents($mon_url);
    if($contents===false)
      echo "erreur";
    else
      echo "<br>le buffer est : ".$contents."<br>";
    Et bien ca maffiche bien "erreur"...

    Peut etre est ce ke je m'y prend mal?

    Je travail avec easyphp version 1.8.0.0 au fait...

  9. #9
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    fais directement un echo de file_get_contens pour voir, sans effectuer de tests

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut
    bah c bizzard ca affiche rien!

  11. #11
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Juste pour savoir c'est activé sur ton serveur ?

    Jettes un oeil dans la faq il y a une alternative à file_get_contens si la fonction est désactivé coté serveur

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut
    euh juste une ptite question, je fait comment pr verifier qu'elle est desactivée ou po??

  13. #13
    Membre habitué Avatar de Davboc
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    266
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 266
    Points : 168
    Points
    168
    Par défaut
    en uploadant une page PHP contenant juste le code

    Et en l'ouvrant dans un explorateur tu devrais pouvoir savoir...

    Enfin je crois...

  14. #14
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut
    Citation Envoyé par Kerod
    Juste pour savoir c'est activé sur ton serveur ?

    Jettes un oeil dans la faq il y a une alternative à file_get_contens si la fonction est désactivé coté serveur
    Ok donc apparement elle est activée puiske qd je lutilise pr ouvrir un simple fichier txt alors ca marche...

    par contre, ca ne marche tjrs pas pr l'url en question..

    De meme, la fct readfile($monurl) naffiche rien elle aussi aussi....

    Que faire?!?

  15. #15
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Une petite question : Vu que dans ton url tu places login et pass, es tu sur que la connexion à bien lieu et que ca vienne pas d'un probable problème de sécurité ?

    Normalement le file_get_contents fonctionne avec n'importe quelle url et surtout avec tous les paramètres voulus. Pour les recherches ca passe parfaitement. D'où le problème de sécurité. Vérifies ton url sans le file_get_contents.

    Je suppose que tu souhaites l'utiliser sans t'être connecté avant. DOnc places dans des conditions réelles : Tu te connectes pas et tu tentes un connexion direct juste avec l'url (dans ton navigateur).

  16. #16
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 792
    Points : 1 206
    Points
    1 206
    Par défaut
    Si ça marche dans un navigateur et pas dans un script il pourrait y avoir deux raisons possibles:

    Le site dépose un cookie avant de permettre l'accès à ta page ou bien il fait une vérification du user agent (ou toute autre entête http qu'un navigateur envoie et pas fopen).

    Solution simuler l'entête d'un navigateur avec les sockets (fsockopen, fputs etc...) ou curl.
    :q :q! :wq :w :w! :wq! :quit :quit! :help help helpquit quit quithelp
    :quitplease :quitnow :leave :shit ^X^C ^C ^D ^Z ^Q QUITDAMMIT
    Jabber: ripat at im.apinc.org

  17. #17
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut
    Citation Envoyé par Kerod
    Une petite question : Vu que dans ton url tu places login et pass, es tu sur que la connexion à bien lieu et que ca vienne pas d'un probable problème de sécurité ?

    Normalement le file_get_contents fonctionne avec n'importe quelle url et surtout avec tous les paramètres voulus. Pour les recherches ca passe parfaitement. D'où le problème de sécurité. Vérifies ton url sans le file_get_contents.

    Je suppose que tu souhaites l'utiliser sans t'être connecté avant. DOnc places dans des conditions réelles : Tu te connectes pas et tu tentes un connexion direct juste avec l'url (dans ton navigateur).
    Bah oui je suis sûr puiske , lorsque je reprend cette meme url et ke je la tappe ds mon navigateur, alors celui mouvre bien la page desirée avec ma session (il voit ke je suis logguer)...

  18. #18
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut
    Citation Envoyé par ripat
    Si ça marche dans un navigateur et pas dans un script il pourrait y avoir deux raisons possibles:

    Le site dépose un cookie avant de permettre l'accès à ta page ou bien il fait une vérification du user agent (ou toute autre entête http qu'un navigateur envoie et pas fopen).

    Solution simuler l'entête d'un navigateur avec les sockets (fsockopen, fputs etc...) ou curl.
    Alors pourrai tu m'en dire un peu plus, on ma deja fait cette remarque, mais je n'est pas bien compris que dois je faire exactement avec les sockets ou curl ... ?

  19. #19
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Voilà un exemple avec cURL
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $ch = curl_init('http://www.developpez.com');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
    curl_setopt($ch, CURLOPT_NOBODY, FALSE);
    //curl_setopt($ch, CURLOPT_HEADER, TRUE) ; // Pour obtenir en plus les en-têtes 
    $response = curl_exec($ch);
    curl_close($ch);
    echo $response;
    Merci à Julp


    Testes avec ça et tiens nous au courant

  20. #20
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    422
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 422
    Points : 83
    Points
    83
    Par défaut
    voici le code que je viens de tester :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    	$ch = curl_init("http://www.site.com/perso/vendre.asp?id_livre=22886&login=toto&mdp=monmotdepasse");
    	curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
    	curl_setopt($ch, CURLOPT_NOBODY, FALSE);
    	//curl_setopt($ch, CURLOPT_HEADER, TRUE) ; // Pour obtenir en plus les en-têtes 
    	$response = curl_exec($ch);
    	curl_close($ch);
    	echo $response;
    Et voici l'erreur qui m'est retourner :

    Fatal error: Call to undefined function: curl_init()

Discussions similaires

  1. Impossible d'ouvrir une URL à partir de l'applet
    Par hurikhan dans le forum Applets
    Réponses: 1
    Dernier message: 11/04/2007, 11h02
  2. Ouvrir une URL avec fopen
    Par dragonspyro93 dans le forum Langage
    Réponses: 2
    Dernier message: 12/01/2007, 23h20
  3. [ASP] Ouvrir une url
    Par castaka dans le forum ASP
    Réponses: 2
    Dernier message: 04/08/2005, 11h02
  4. Ouvrir une URL en C/C++ sous Win32
    Par pykoon dans le forum MFC
    Réponses: 7
    Dernier message: 26/04/2005, 09h08

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