Помощь, касающаяся CURL на Moodle - PullRequest
       17

Помощь, касающаяся CURL на Moodle

2 голосов
/ 17 сентября 2011

Добрый день всем.Я сейчас программирую на Moodle.Поскольку у меня пока нет ответов на их форумах, я должен спросить их здесь, потому что мне очень нужна помощь.Как мой cURL может обойти страницу входа в Moodle?

    $ckfile = tempnam("/tmp","CURLCOOKIE");
    $ch = curl_init(http://127.0.0.1/login/index.php);

    $data = array('username' => 'admin', 'password' => 'Admin_123');

    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_COOKIEJAR, $ckfile);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    $url = "http://127.0.0.1/mod/quiz/report.php?q=4&mode=analysis";
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_COOKIEFILE, $ckfile);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $output = curl_exec($ch);

    echo $output;

    curl_close($ch);

Учитывая этот код, я успешно вошел в систему как администратор, но проблема в том, что я все еще застрял на странице входа вместо перехода к URL (http://127.0.0.1/mod/quiz/report.php?q=4&mode=analysis), которая должна быть моей целью. Как я могу обойти страницу входа? Любая помощь будет принята с благодарностью. Спасибо!

1 Ответ

0 голосов
/ 17 сентября 2011

Если вы хотите использовать moodle с PHP, вам не следует использовать cURL для работы на страницах, вместо этого используйте Moodle API .Если по какой-либо причине вы все еще хотите использовать веб-страницы, вы должны хотя бы использовать Moodle API для аутентификации .Это дает вам токен сеанса, с помощью которого вы можете получить доступ к последующим страницам.

...