par
Invité » 14 avr. 2009, 22:36
Bonjour,
Je dois récupérer le code source d'une page https qui est protégée par login et mot de passe. J'ai bien les identifiants mais je ne sais pas comment faire avec php pour loguer la page identifiant et mot de passe automatiquement pour arriver a la page qui m'intéresse et récuperer le code source pour travailler sur des variables. J'ai trouvé ce code la via la commande stream_context_create. Mais je suis perdu (authentification header etc.. ??)la si qqn a la solution. Ca serait génial ca fait 3 jours que je suis dessus sans résultat. Si qqn qui gère pouvait me donner un coup de main je suis pret a le dédommager...
Je récapitule :
Etape 1 : Page d'authentification
Etape 2 : Page https qui s'affiche apres authentification (c'est la page ou je dois récupérer le code source)
Code trouvé :
Code : Tout sélectionner
<?php
$url = 'http://www.monsite.com/mapage.php';
$nom = 'nom';
$pass = 'password';
$auth = base64_encode("$nom:$pass") . "\r\n";
$header = "Authorization: Basic $auth";
$opts = array( 'http' =>
array (
'method' => 'GET',
'header' => $header
)
);
$context = stream_context_create($opts);
$http_page = file_get_contents($url,false,$context);
$http_result = 0;
$http_header = '';
if (($http_page != FALSE) && (isset($http_response_header))) {
$nLines = count( $http_response_header );
for ( $i = $nLines-1; $i >= 0; $i-- ) {
$line = $http_response_header[$i];
$http_header .= $line . "\n";
if ( strncasecmp( "HTTP", $line, 4 ) == 0 ) {
$response = explode( ' ', $line );
$http_result = $response[1];
}
}
}
if ($http_result != 0) echo "<pre>$http_page\n\n$http_header\n\n$http_result</pre>";
?>
Sur ce code la je ne sais pas quoi paramétrer
Merci d'avance
Bonjour,
Je dois récupérer le code source d'une page https qui est protégée par login et mot de passe. J'ai bien les identifiants mais je ne sais pas comment faire avec php pour loguer la page identifiant et mot de passe automatiquement pour arriver a la page qui m'intéresse et récuperer le code source pour travailler sur des variables. J'ai trouvé ce code la via la commande stream_context_create. Mais je suis perdu (authentification header etc.. ??)la si qqn a la solution. Ca serait génial ca fait 3 jours que je suis dessus sans résultat. Si qqn qui gère pouvait me donner un coup de main je suis pret a le dédommager...
Je récapitule :
Etape 1 : Page d'authentification
Etape 2 : Page https qui s'affiche apres authentification (c'est la page ou je dois récupérer le code source)
Code trouvé :
[code]
<?php
$url = 'http://www.monsite.com/mapage.php';
$nom = 'nom';
$pass = 'password';
$auth = base64_encode("$nom:$pass") . "\r\n";
$header = "Authorization: Basic $auth";
$opts = array( 'http' =>
array (
'method' => 'GET',
'header' => $header
)
);
$context = stream_context_create($opts);
$http_page = file_get_contents($url,false,$context);
$http_result = 0;
$http_header = '';
if (($http_page != FALSE) && (isset($http_response_header))) {
$nLines = count( $http_response_header );
for ( $i = $nLines-1; $i >= 0; $i-- ) {
$line = $http_response_header[$i];
$http_header .= $line . "\n";
if ( strncasecmp( "HTTP", $line, 4 ) == 0 ) {
$response = explode( ' ', $line );
$http_result = $response[1];
}
}
}
if ($http_result != 0) echo "<pre>$http_page\n\n$http_header\n\n$http_result</pre>";
?>
[/code]
Sur ce code la je ne sais pas quoi paramétrer
Merci d'avance