File_get_contents et paramètres dans l'url

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par maxotrick, 25 Février 2012.

  1. maxotrick
    maxotrick Nouveau WRInaute
    Inscrit:
    26 Novembre 2011
    Messages:
    17
    J'aime reçus:
    0
    Bonjour,

    j'utilise la fonction file_get_contents pour extraire des données ( php)

    elle fonctionne sans probleme de cette manière

    $var = file_get_contents ("http://www.example.com/index.php?param1=xx&param2=yy&param3=zz");

    sauf que l'url est une variable, donc si j'utilise ce cas par exemple

    $url = "http://www.example.com/index.php?param1=xx&param2=yy&param3=zz";

    $var = file_get_contents ($url);

    la fonction télécharge les donné de la page avec seulement le premier paramètre et ne prend pas en considération les deux autres !!

    une solution ??
    merci
     
  2. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 192
    J'aime reçus:
    1
    Tu dois avoir un caractère foireux dans un de tes paramètres qui doit poser problème dans la variable, car ça fonctionne très bien ailleurs.
     
  3. maxotrick
    maxotrick Nouveau WRInaute
    Inscrit:
    26 Novembre 2011
    Messages:
    17
    J'aime reçus:
    0
    non je pense pas, c'est avec tous les url que ça se passe

    en faite il s'agit d'un proxy web que je programme, et je suis coincé sur ce truc.
    voici un exemple d'une url -www.xxxxxxxxxxx.com/forumdisplay.php?s=97e26d76867432cc15651cde3b6993c1&f=3
    un autre -www.xxxxxxxxxxx.com/index.php?cat=1&region=1

    aucun caractère special, et toujour la meme chose avec tout url le premier parametre paasse tandis que les autre ne sont pas prix en consideration
     
  4. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 192
    J'aime reçus:
    1
    essaie & a la place du "&" dans les urls pour voir.
     
  5. maxotrick
    maxotrick Nouveau WRInaute
    Inscrit:
    26 Novembre 2011
    Messages:
    17
    J'aime reçus:
    0
    meme problème
     
  6. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 192
    J'aime reçus:
    1
    Peut être le code entre la définition de la variable $url et le file get. Là je sèche.
     
  7. maxotrick
    maxotrick Nouveau WRInaute
    Inscrit:
    26 Novembre 2011
    Messages:
    17
    J'aime reçus:
    0
    bien
    le problème est a moitié résolu, ça vient du code entre la definition de la variable et le file_get

    si je fait ceci

    $url = "http://*************/showthread.php?t=6350&page=3";
    $cont = file_get_contents ($url);

    elle fonctionne

    mais comme ça non


    $u = isset ($_REQUEST['u']) ? $_REQUEST['u'] : 0;
    $url = base64_decode($u);
    echo $url; // pour verifier, elle est 100% ok
    $cont = file_get_contents ($url);

    comme ça encore ne fonctionne pas


    $u = "http://*************/showthread.php?t=6350&page=3";
    $u = base64_encode($u);
    $u = base64_decode($u);
    $cont = file_get_contents ($u);


    je conclu que n'importe quel traitement de l'adresse pose un probleme !!
     
  8. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    8 916
    J'aime reçus:
    271
  9. maxotrick
    maxotrick Nouveau WRInaute
    Inscrit:
    26 Novembre 2011
    Messages:
    17
    J'aime reçus:
    0
    déja essayé :)

    class CA_HTTP {
    public static function get_contents($url) {
    $ch = curl_init();
    curl_setopt ($ch, CURLOPT_URL, $url);
    curl_setopt ($ch, CURLOPT_HEADER, 0);
    ob_start();
    curl_exec ($ch);
    curl_close ($ch);
    return ob_get_clean();
    }
    }

    //$cont = CA_HTTP::get_contents ($url);
     
  10. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    8 916
    J'aime reçus:
    271
    Et si tu fais echo $url avant le file_get_contents() tout semble good ?
     
  11. maxotrick
    maxotrick Nouveau WRInaute
    Inscrit:
    26 Novembre 2011
    Messages:
    17
    J'aime reçus:
    0
    je fait un echo juste avant le file_get_contents, l'url est 100% ok !!!!!
     
  12. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 192
    J'aime reçus:
    1
    C'est le problème des caractères foireux que j'évoquais tout au début ... l'écho ne permet pas de déterminer si un caractère est valide ou pas puisqu'il génère un affichage a travers les couches applicatives du navigateur.
    Peu tu expliquer le pourquoi du base64_decode() qui me semble totalement inutile ?
     
  13. maxotrick
    maxotrick Nouveau WRInaute
    Inscrit:
    26 Novembre 2011
    Messages:
    17
    J'aime reçus:
    0
    parceque je prend l'adresse qui passe dans une variable dans l'url, cette adresse est déja encodé. donc je la décode

    c'est un proxy que je programme et les adresse doivent etre cachés.
     
  14. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 192
    J'aime reçus:
    1
    Ce qui confirme qu'un traitement en route rend l'url incompatible a cause de caractère "&" (puisque c'est les paramètres qui suivent ce caractère qui disparaissent)
    Quand tu encode l'url pour la passer en paramètre dans l'url utilise plutôt urlencode ( string $str ) qui ne devrais pas introduire de caractère incompatibles avec ta commande file get.
    La fonction inverse pour décoder est urldecode ( string $str )
     
  15. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    8 916
    J'aime reçus:
    271
  16. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 192
    J'aime reçus:
    1
    arg j'avais pas percuté sur le fait que les urls doivent être masquées ...
    1/ soit tu passe en post si c'est possible
    2/ soit tu fait base64_encode() sur l'url déjà modifiée par urlencode()
     
  17. zeb
    zeb WRInaute accro
    Inscrit:
    5 Décembre 2004
    Messages:
    12 192
    J'aime reçus:
    1
  18. maxotrick
    maxotrick Nouveau WRInaute
    Inscrit:
    26 Novembre 2011
    Messages:
    17
    J'aime reçus:
    0
    effectivement
    merci beaucoup :)
     
Chargement...
Similar Threads - File_get_contents paramètres Forum Date
probléme file_get_contents Développement d'un site Web ou d'une appli mobile 4 Octobre 2019
[PHP] file_get_contents retourne un "Connection timed out" Développement d'un site Web ou d'une appli mobile 14 Février 2014
file_get_contents sur backling Administration d'un site Web 29 Juillet 2012
[PHP] file_get_contents sur le serveur même... Développement d'un site Web ou d'une appli mobile 9 Juillet 2012
File_get_contents timeout Développement d'un site Web ou d'une appli mobile 27 Avril 2010
Récupérer contenu de la page google par file_get_contents Développement d'un site Web ou d'une appli mobile 23 Avril 2010
Méthode file_get_contents php - Problème de géocoding yahoo Développement d'un site Web ou d'une appli mobile 26 Novembre 2009
Redirection url avec paramètres tracking dans Google Analytics Google Analytics 23 Novembre 2019
Paramètres UTM sur lien vidéo Youtube Google Analytics 12 Février 2019
Passer des paramètres UTF-8 dans l'URL ! URL Rewriting et .htaccess 5 Mars 2018
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice