使用PHP和cURL登录indyarocks.com

使用PHP和cURL登录indyarocks.com,php,libcurl,Php,Libcurl,我是卷发新手,对卷发知之甚少。我基本上想通过libcurl for PHP登录我在www.indyarocks.com上的帐户。我不知道它使用什么类型的身份验证(我不知道如何找到它)。当我进入时,我会得到一个登录表单,要求输入我的用户名和密码。我输入用户名和密码,点击登录,一切都很好。我试着用cURL自动化这个。这是我的代码片段。 curl_setopt($curl_connection, CURLOPT_URL, "http://www.indyarocks.com/loginchk.php"

我是卷发新手,对卷发知之甚少。我基本上想通过libcurl for PHP登录我在www.indyarocks.com上的帐户。我不知道它使用什么类型的身份验证(我不知道如何找到它)。当我进入时,我会得到一个登录表单,要求输入我的用户名和密码。我输入用户名和密码,点击登录,一切都很好。我试着用cURL自动化这个。这是我的代码片段。

curl_setopt($curl_connection, CURLOPT_URL, "http://www.indyarocks.com/loginchk.php");
curl_setopt($curl_connection, CURLOPT_POST, 1);
curl_setopt($curl_connection, CURLOPT_HTTPAUTH, CURLAUTH_ANY); 
curl_setopt($curl_connection, CURLOPT_USERPWD, $username.':'.$password); 
我查看了登录页面的源代码,找到了用户名和密码发送到的页面地址(表单的action属性),即“http://www.indyarocks.com/loginchk.php“并将其设置为目标url。当我运行这个,我得到的用户名或密码是错误的错误和登录失败。我的用户名和密码是正确的。我不知道是什么问题。密码可以加密吗?这可能是这次失败的原因吗?

请帮我解决这个问题。我真的很感激。


提前感谢。

您正在尝试使用HTTP身份验证,但该站点使用了其他功能。您需要复制发布表单的用户。检查表单字段的名称,并发布它们。您需要
CURLOPT_POSTFIELDS

您正在尝试使用HTTP身份验证,但站点使用了其他功能。您需要复制发布表单的用户。检查表单字段的名称,并发布它们。您需要
CURLOPT\u POSTFIELDS

替换

curl_setopt($curl_connection, CURLOPT_USERPWD, $username.':'.$password); 

还包括表单中的任何隐藏字段,可能有!。 无论如何,将来您可以使用本地代理来确定发送到服务器的确切内容,尝试使用或替换

curl_setopt($curl_connection, CURLOPT_USERPWD, $username.':'.$password); 

还包括表单中的任何隐藏字段,可能有!。
无论如何,将来您可以使用本地代理来确定发送到服务器的确切内容,尝试使用或

只是猜测。。。很可能您必须发送POST变量。或者,您可以只发送cookie而无需登录。有各种各样的FF扩展可以让您浏览cookie。就我个人而言,我建议使用“Web开发者”扩展,它所做的远不止这些。。。很可能您必须发送POST变量。或者,您可以只发送cookie而无需登录。有各种各样的FF扩展可以让您浏览cookie。就我个人而言,我建议使用“Web开发者”扩展,它的作用远不止于此。你能解释一下代理的作用吗。这是在编写代码或处理每个请求时都要做一次的事情吗+1从我这里获取链接。@sami代理就像客户端计算机和web服务器之间的中间服务器。有关详细信息,本地代理是托管在客户端计算机上的代理服务器,用于拦截从浏览器向服务器发出的请求。它主要用于web应用程序测试。您能详细解释一下代理的用途吗。这是在编写代码或处理每个请求时都要做一次的事情吗+1从我这里获取链接。@sami代理就像客户端计算机和web服务器之间的中间服务器。有关详细信息,本地代理是托管在客户端计算机上的代理服务器,用于拦截从浏览器向服务器发出的请求。它主要用于web应用程序测试。