2010-09-11 100 views
-2

我正在Joomla创建一个学术/社区网站。我的网站要求之一是从官方大学网站上获得结果。我将在我的网站上创建一个模块,该模块将以大学ID为输入,并提交它将显示从官方网站获得的结果。需要帮助使用卷曲编码

我发现很难将数据从一个站点传递到其他站点。官方网站使用Post方法输入大学ID。 信息:官方网站= http://results.vtu.ac.in/ 和输入1kn04cs066字段的名称是“摆脱”

我曾试图通过给定苏有朋的样本代码,但我没有得到的结果页面。

请帮助我详细的方法与编程代码示例。它将不胜感激。谢谢。

回答

1

您至少需要以下选项来执行请求并获取结果:CURLOPT_POST,CURLOPT_POSTFIELDS和CURLOPT_RETURNTRANSFER。但是,您可能需要更多选项来执行请求。

if(!($request = curl_init('http://results.vtu.ac.in'))) 
     die('curl_init failed'); 

    curl_setopt($request, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($request, CURLOPT_POST, true); 
    curl_setopt($request, CURLOPT_POSTFIELDS, array('rid' => '1kn04cs066')); 

    if(!($result = curl_exec($request))) 
     die('curl_exec failed with error: '.curl_error($request)); 

    curl_close($request); 

    echo $result; 
+0

感谢。但它无法正常工作,因此我仅仅收到提交页面。请帮助。 – Robert 2010-09-11 16:46:51

+0

经过一些测试后,我很快发现它需要按钮的值以及获得正确的页面。因此,按照'submit'=>'SUBMIT'的顺序添加另一对数组,并且它将起作用。您可以使用web开发人员工具栏上的firefox轻松检查表单参数。 – ontrack 2010-09-11 16:56:48

0

BTW,这将是

curl_setopt($request, CURLOPT_POSTFIELDS, array('rid' => '1kn04cs066','submit' => 'SUBMIT')); 

curl_setopt($request, CURLOPT_POSTFIELDS, array('rid' => '1kn04cs066')); 
curl_setopt($request, CURLOPT_POSTFIELDS, array('submit' => 'SUBMIT'));