使用PHP(或JS)脚本单击外部按钮

时间:2016-08-04 14:09:57

标签: javascript php html

我想编写一个PHP脚本,在运行时,设置页面here上的下拉菜单的值,然后按“获取按钮”提交这些值。

这应链接到另一个页面(http://voyager.gsfc.nasa.gov/cgi-bin/heliopause_all),我希望PHP脚本返回其中。

我没有尝试过这个,因为我的PHP知识非常有限,所以我想问这是否可能以及我需要学习的PHP才能做到这一点?

- 编辑 -

查看源代码,只需从JavaScript发出POST请求就可以了吗?

1 个答案:

答案 0 :(得分:1)

我有过第一个想法。 使用curl进行POST:http://voyager.gsfc.nasa.gov/cgi-bin/heliopause_all

使用这些POST参数

average:6hour
syear:9999
smonth:9999
sday:9999
eyear:9999
emonth:9999
eday:9999
sat:1
mnemonic:IPGH
duration:3-months
outputType:list
timeFormat:ISO

最后一步是解析响应。

代码:

<?php

$url = 'http://voyager.gsfc.nasa.gov/cgi-bin/heliopause_all';
$parameters_str = '';
$parameters = array(
    'average'=>'6hour',
    'syear'=>'9999',
    'smonth'=>'9999',
    'sday'=>'9999',
    'eyear'=>'9999',
    'emonth'=>'9999',
    'eday'=>'9999',
    'sat'=>'1',
    'mnemonic'=>'IPGH',
    'duration'=>'3-months',
    'outputType'=>'list',
    'timeFormat'=>'ISO'
);

foreach ($parameters as $k => $v) {
    $parameters_str .= $k . '=' . $v . '&';
}
rtrim($parameters_str, '&');


$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, count($parameters));
curl_setopt($ch, CURLOPT_POSTFIELDS, $parameters_str);
curl_setopt($ch, CURLOPT_HEADER, false);


$result = curl_exec($ch);

curl_close($ch);

echo $result;