Citat:
Ursprungligen postat av
cybersnake
Hej,
Jag undrar om det går att göra ett PHP som automatiskt loggar in med ett användarnamn och lösenord, där en en inloggningsruta popar upp.
Denna är lik den ni ser på bilden på länken här nedan och efter att man automatiskt loggas in så skall PHP scriptet alltså läsa av en XML och plocka ut viss information ur den som den i sin tur presenterar för användaren på hemsidan. Den senare delen fungerar utmärkt.
https://filestore.community.support....6-2b8cbc7dcaa5
Citat:
Ursprungligen postat av
cybersnake
Min fråga framgår i mitt inlägg ovan. Nämligen att jag vill veta om det är möjligt att göra detta som jag frågar efter samt hur man i så fall gör. Något lösningsförslag, idér andra tips.
Det beror helt på hur autentisering mot tjänsten ser ut ut. Använder de t.ex. basic auth, access token eller session?
Enklast skulle förmodligen vara att leta upp en url att autentisera sig mot och sedan läsa av datan som returneras.
Jag är ganska trött nu, men jag skulle tro att du kan göra något i stil med detta:
Kod:
<?php
namespace App;
class DataFetcher
{
public static function fetchData($url, $auth = false, $token = false, $post = false)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
if ($auth) {
curl_setopt($ch, CURLOPT_USERPWD, $auth);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
} else if ($token) {
curl_setopt($ch, CURLOPT_HTTPHEADER, [
'Authorization: Bearer ' . $token
]);
} else if ($post) {
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
curl_setopt($ch, CURLOPT_COOKIEJAR, dirname(__FILE__) . '/cookie.txt');
curl_setopt($ch, CURLOPT_COOKIEFILE, dirname(__FILE__) . '/cookie.txt');
}
$output = curl_exec($ch);
curl_close($ch);
return $output;
}
}
Där bör du ha stöd för både basic auth, token och session.