• Как написать такую функцию PHP?

    @krypt3r
    <?php
    session_start();
    function file_get_contents_curl($url) {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_URL, $url);
        return curl_exec($ch);
    }
    $txResult = file_get_contents_curl($url); // тут должна быть ваша ссылка на ваш внешний веб-сервис для проверки
    if ($txResult == 1) {
        header("Location: http://server.com/preauth.php"); /* добавить POST (username+pass) */
        exit;
    } elseif ($txResult == 0) {
        echo "Wrong usename or password!";
    }
    ?>
    Ответ написан
    4 комментария
  • Как написать такую функцию PHP?

    @kryvel
    Системный администратор
    потому что $txResult у Вас локальная переменная в функции file_get_contents_curl и она неопределена за пределами этой функции.
    и вообще очень странно что Вы ее определяете там и потом не используете.
    попробуйте вот так:

    <?php
    session_start();
    $url = "https://webservissavtorizacii.com/check.jsp"
    
    $options = array(
        'http' => array(
            'header'  => "Content-type: application/x-www-form-urlencoded\r\n",
            'method'  => 'POST',
            'content' => http_build_query($_POST),
        ),
    );
    $context  = stream_context_create($options);
    $txResult = file_get_contents($url, false, $context);
    
    if ($txResult == 1)
       echo "Success!";
    elseif ($txResult == 0)
        echo "Wrong usename or password!";
    ?>
    
    <!DOCTYPE html>
    <html>
    . . .
    <!-- Здесь http://server.com/preauth.php это ваш php скрипт который мы редактируем -->
    <form name="login" action="http://server.com/preauth.php" method="post" accept-charset="utf-8">
    . . .
    </html>


    вот еще можете посмотреть: stackoverflow.com/questions/5647461/how-do-i-send-...
    Ответ написан
    1 комментарий