3 votes

Comment authentifier le nom d'utilisateur et le mot de passe d'un site https pour accéder à un fichier en php ?

Je veux accéder à un fichier xml à partir de https://test24.highrisehq.com/tasks/upcoming.xml à l'aide de php. Voici un exemple de code :

$xml = simplexml_load_file("https://test24.highrisehq.com/tasks/upcoming.xml");

puisque la connexion est sécurisée, je reçois une erreur :

Attention : simplexml_load_file(https://test24.highrisehq.com/tasks/upcoming.xml) [function.simplexml-load-file] : échoué d'ouvrir le flux : la requête HTTP a échoué ! HTTP/1.1 401 Non autorisé en D:\wamp\www\xml\index.php sur la ligne 3

Je dois entrer le nom d'utilisateur et le mot de passe quelque part dans le code avant d'accéder au fichier. Quelqu'un peut-il me dire comment réaliser cela ?

Salutations Umair

3voto

cwallenpoole Points 34940

CURL, vous cherchez cURL ! (Sérieusement, cURL est génial. Faites défiler la page de ce lien et vous trouverez l'exemple d'authentification HTTP ci-dessous)

// HTTP authentication 
$url = "https://www.example.com/protected/"; 
$ch = curl_init();     
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);  
curl_setopt($ch, CURLOPT_URL, $url);  
curl_setopt($ch, CURLOPT_USERPWD, "myusername:mypassword");
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); //see link below  
$result = curl_exec($ch);  
curl_close($ch);  
echo $result; 

Vous pouvez trouver des informations sur l'utilisation de CURLOPT_SSL_VERIFYPEER aquí .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X