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 :

[Réseau] Récupérer informations de la page Imageshack


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 25
    Points : 20
    Points
    20
    Par défaut [Réseau] Récupérer informations de la page Imageshack
    Bonjour,

    Sur un de mes sites, j'ai intégré l'iframe de imageshack qui envoi par un formulaire les différentes informations de l'image à héberger via la methode POST.

    Cela a pour effet d'ouvrir une nouvelle page avec le résultat.

    Comment récupérer la page résultante dans une variable tableau afin d'en extraire le code à insérer dans un blog ?
    Je voudrais éviter aux membres du blog d'avoir à faire un copier/coller

    J'ai essayé avec fopen, mais comme les infos sont envoyées en POST, si je les met dans l'URL (méthode GET), ça ne marche pas

    une idée ?

    Merci d'avance.

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Pour fopen c'est possible mais il vous faut utiliser son paramètre contexte. Si vous en avez la possibilité vous pouvez vous simplifier la tâche avec l'extension curl.

    Voilà comment on doit pouvoir procéder avec fopen/file_get_contents (attention cette fonction a été prévue pour PHP 5) :
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
        /**
         * $url : l'URL de la page distante
         * $timeout : timeout en secondes (requière une version > 5.2.1 pour être effectif)
         * $nom_local : fichier où sera écrit le corps de la page distante (inutilisé si  la valeur de ce paramètre est assimilable à FALSE
         * $post : les données POST à envoyer, sous la forme d'un tableau PHP ou d'une string gérée par vos soins (urlencodée)
         **/
        function recuperer_page($url, $timeout = 10, $nom_local = '', $post = NULL)
        {
            $infos = parse_url($url);
            $contexte = NULL;
            if ($post) {
                $options = array(
                    'http' => array(
                        'method' => $post ? 'POST' : 'GET',
                        'header' => '',
                        'timeout' => $timeout // Effectif pour les versions 5.2.1 et supérieures
                    )
                );
                if ($post) {
                    $data = http_build_query($post);
                    $options['http']['header'] .= "Content-type: application/x-www-form-urlencoded\r\n";
                    $options['http']['header'] .= 'Content-Length: ' . strlen($data) . "\r\n";
                    $options['http']['content'] = $data;
                }
                $contexte = stream_context_create($options);
            }
            $content = file_get_contents($url, FALSE, $contexte);
            if ($nom_local) {
                if (!file_put_contents($nom_local, $content)) {
                    return FALSE;
                }
            }
            return $content;
        }
    (non testé)

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 25
    Points : 20
    Points
    20
    Par défaut
    Merci bien.
    J'ai essayé avec fopen/file_get_contents et curl, mais il doit y avoir une protection du coté imageshack car de tombe à chaque fois sur la page de garde du site.
    Je vais essayé de trouver ce que c'est

    Encore merci pour l'aide

  4. #4
    Membre éclairé Avatar de Korko Fain
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    632
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 632
    Points : 718
    Points
    718
    Par défaut
    au hasard :
    - Mauvaise URL
    - Des données envoyées en POST qui n'ont pas été faites
    - Le Referrer à falsifier

Discussions similaires

  1. Réponses: 0
    Dernier message: 19/03/2014, 10h00
  2. [Débutant] Récupérer des informations sur une page web
    Par Jules24 dans le forum Général Dotnet
    Réponses: 0
    Dernier message: 24/04/2012, 10h55
  3. [XL-2000] Récupérer des informations via une page web XML
    Par peofofo dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 24/04/2009, 15h46
  4. [RegEx] Récupérer des informations d'une page HTML distante
    Par Marshall_Mathers dans le forum Langage
    Réponses: 2
    Dernier message: 27/02/2007, 16h49
  5. Récupérer informations IP, ...
    Par jpdelx dans le forum ASP
    Réponses: 6
    Dernier message: 16/11/2003, 05h56

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