Prendre le contenu du page
Hors ligneGlougloute Le 04/01/2008 à 15:32 Profil de Glougloute Configuration de Glougloute

I love VIC
Bonjour,
J'aimerais récupérer le contenu d'une page. Jusqu'ici, tout va bien. Mais cette page doit avoir une redirection avec un header. J'aimerais pouvoir prendre l'url de cette page.

Avez-vous une idée comment je pourrais procéder ?


Voici mon bout de code pour récupérer le contenu d'une page :



$chemin_fichier = 'http://www.google.Fr';
     $fp=@fopen($chemin_fichier,"r");
     $contenu = '';

     if($fp) {
          while(!feof($fp)){
          $contenu .= fgets($fp,1024);
          }
echo $contenu;
?>
--
Je vous aiderai dans la mesure du possible ;)
Hors ligneAnthony Le 05/01/2008 à 12:22 Profil de Anthony Configuration de Anthony

Fou du volant
Salut Glougloute

Un exemple :


<?php
$contenu 
= ''; 
$resultats 
= array();

if(
is_resource($fp = @fsockopen('www.vulgarisation-informatique.com', 80)))
{
     $out  = 'GET / HTTP/1.1'."\r\n";
     $out .= 'Host: vulgarisation-informatique.com'."\r\n";
     $out .= 'Connection: Close'."\r\n\r\n";

     fwrite($fp, $out);

     while(!feof($fp))
     {
          $ligne = fgets($fp,1024);

          if(trim($ligne) !== '')
          {
               $contenu .= $ligne;
          }
          else
          
{
               break;
          }
     }

     if(preg_match('`Location: (.*)`i', $contenu, $resultats) === 1)
     {
          echo 'URL de destination : ',$resultats[1];
     }

     //echo '<br />Liste complète des headers : ',$contenu;
}
?>


Hop ;)
--

Hors ligneGlougloute Le 05/01/2008 à 20:13 Profil de Glougloute Configuration de Glougloute

I love VIC
Merci beaucoup !
Ce script fonctionne à merveille quand j'essaye avec l'url de ton site.


J'ai essayé avec ça : http://www.dailymotion.com/swf/x3wpqn

Si on essaye avec son navigateur, on est redirigé vers une autre url.
Le script php que tu viens d'écrire ne permet pas de lire les headers de cette page. J'aimerais vraiment pouvoir récupérer l'url qui est écrire dans le navigateur...
--
Je vous aiderai dans la mesure du possible ;)
Hors ligneAnthony Le 05/01/2008 à 20:42 Profil de Anthony Configuration de Anthony

Fou du volant
C'est normal, un simple copier/coller ne fonctionne pas, il faut lire un peu la doc du protocole HTTP  ...


<?php
$contenu 
''
$resultats = array();

if(
is_resource($fp fsockopen('www.dailymotion.com'80)))
{
     $out  'GET /swf/x3wpqn HTTP/1.1'."\r\n";
     $out .= 'Host: www.dailymotion.com'."\r\n";
     $out .= 'Connection: Close'."\r\n\r\n";

     fwrite($fp$out);

     while(!feof($fp))
     {
          $ligne fgets($fp,1024);

          if(trim($ligne) !== '')
          {
               $contenu .= $ligne;
          }
          else
          
{
               break;
          }
     }

     if(preg_match('`Location: (.*)`i'$contenu$resultats) === 1)
     {
          echo 'URL de destination : '.$resultats[1];
     }

     //echo '<br />Liste complète des headers : ',$contenu;
}
?>
--

Hors ligneGlougloute Le 05/01/2008 à 21:24 Profil de Glougloute Configuration de Glougloute

I love VIC
Nickel :)
T'es un génie !
--
Je vous aiderai dans la mesure du possible ;)
Vous avez résolu votre problème avec VIC ? Faites-le savoir sur les réseaux sociaux !
Vulgarisation-informatique.com
Cours en informatique & tutoriels