[PHP] Prijava v stran in uporaba

Zdravo!!
Imam eno težavo z programiranjem PHP kode za pobiranjem podatkov iz strani. Saj bi se moral v stran najpreje prijaviti z uporabniškim imenom in geslom potem pa pobrati podatke ki se prikažejo.

Zanima me če obstaja kakšna knjižnica, ki bi mi pomagala da bi se z PHP-jem prijaviti v stran in potem se z prijavljenim uporabnikom sprehajal po strani, ki bi vsebovala podatke ki so vidni samo prijavljenim uprabnikom, obenem pa bi lahko še naprimer poslal nek POST in spremenil nastavitve uporabnika kateri je prijavljen.

Zahvaljujem se vam za pomoč !!

1 odgovor

Uporabi curl. Nekaj kode za pomoč:

//login.. zgenerira cookie
function login()
{
    $headers = array("User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.8) Gecko/20061025 Firefox/1.5.0.8");

    $url="https://www1.gotomeeting.com/en_US/island/login.flow";
    $ch = curl_init();
    curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cookies.txt');
    curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookies.txt');
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt ($ch, CURLOPT_POST, 1);
    curl_setopt ($ch, CURLOPT_POSTFIELDS, "UserId=user@user.com&Password=geslo&Form=login");
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_VERBOSE, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($ch, CURLOPT_MAXREDIRS, 4);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    $store = curl_exec ($ch);
    curl_close ($ch);
}

//dobi html strani o webinarjih
function getData()
{
    $headers = array("User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.8) Gecko/20061025 Firefox/1.5.0.8");

    $url="https://www1.gotomeeting.com/en_US/island/organizers/webinar/myWebinars.tmpl";
    $ch = curl_init();
    curl_setopt ($ch, CURLOPT_COOKIEJAR, 'cookies.txt');
    curl_setopt($ch, CURLOPT_COOKIEFILE, 'cookies.txt');
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
    curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_VERBOSE, 1);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($ch, CURLOPT_MAXREDIRS, 4);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
    $store = curl_exec ($ch);
    curl_close ($ch);
    return $store;
}

Upam da bo naprej šlo.

2