php怎么向链接传送数据,php上传数据

如何从一个php文件向另一个地址post数据

php调接口都是通过curl来完成的。

创新互联公司是一家专业提供文圣企业网站建设,专注与成都网站制作、网站设计、H5建站、小程序制作等业务。10年已为文圣众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。

下面是我项目中的一个方法:

$url 是要post的地址

$params 是参数,格式array('参数1'='参数1值','参数2'='参数2值')

$header 请求头,如果模拟浏览器访问需要

$timeout 超时时间

//公共获取指定网页内容

function curl($url,$params = array(),$header = array(),$timeout = 180){

if(empty($url)) return $url;

$curl = curl_init();

curl_setopt($curl, CURLOPT_URL,$url);//请求url地址

curl_setopt($curl, CURLOPT_HTTPHEADER , $header );  //构造IP

if(!empty($params)  count($params)  0){

curl_setopt($curl, CURLOPT_POST, true);

//Request Payload格式数据

if(isset($params['is_json'])  $params['is_json'] === true){

unset($params['is_json']);

$params = json_encode($params);

}else{

$params = http_build_query($params);

}

curl_setopt($curl, CURLOPT_POSTFIELDS, $params);        

}

//curl_setopt($curl, CURLOPT_HEADER, true);//是否返回响应头信息

curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);//是否将结果返回

curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);//是否重定向

//curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36');

curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);   // 只信任CA颁布的证书  

//curl_setopt($curl, CURLOPT_CAINFO, $cacert); // CA根证书(用来验证的网站证书是否是CA颁布)  

//curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); // 检查证书中是否设置域名,并且是否与提供的主机名匹配  

// 从证书中检查SSL加密算法是否存在

curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);

curl_setopt($curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0); 

//curl_setopt($curl, CURLOPT_HTTPHEADER, array("Expect: ")); 

curl_setopt($curl, CURLOPT_IPRESOLVE, CURL_IPRESOLVE_V4 );

curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, $timeout);//用来告诉PHP脚本在成功连接服务器前等待多久(连接成功之后就会开始缓冲输出),这个参数是为了应对目标服务器的过载,下线,或者崩溃等可能状况;

curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);//用来告诉成功PHP脚本,从服务器接收缓冲完成前需要等待多长时间。如果目标是个巨大的文件,生成内容速度过慢或者链路速度过慢,这个参数就会很有用。

// 自动设置Referer

curl_setopt($curl, CURLOPT_AUTOREFERER, 1);

//curl_setopt($curl, CURLOPT_COOKIEJAR, "D:\phpStudy\WWW\cj\cooBE66.tmp");// //写入cookie信息

//setcookie('cookie_jar', $cookie_jar); //保存cookie路径

$data = curl_exec($curl); //执行    

curl_close($curl);

return $data;

}

如何将一个php页面的值传给另一个页面

办法很多:

第一种:GET(就是URL,也就是链接上带有参数),例子:

1.php(第一个页面)

a href="2.php?arr=abc"传递get数组名为arr,值是abc,传递到2.php页面

/a

看到?arr=abc了吧,这就是参数了,如果有两个呢:a href="abc.php?abc=abc123=123"传递get数组名为abc,值是abc

/a

用这个隔开,当然啦,在网页上看就是

2.php(第二个页面)

?php

echo $_GET['abc'];

//输出传递过来的值

-------------------------------------------------------------------------

第二个办法是:POST,表单提交,依旧是给例子:

form name="form1" method="post" action="2.php"

method的意思是以post方式提交到2.php,action的意思是动作,method是类型

随便输一个:

label

input type="text" name="val" /

input是html的标签,类型是文本域(输入文字),名字是val(后台用于接收的名称)

/label

p

label

input type="submit" name="Submit" value="提交" /

/label

/p

/form

2.php(第二个页面)

?php

echo $_POST['val'];

//输出上一个页面提交过来的val文本域的值。

?

-------------------------------------------------------------------------------------------

第三个办法是:SESSION,会话。还是给例子(注意,SESSION是全局变量,也就是说,它只要被声明,在所有页面都是可用的,前提是你不关闭网页或者没有到SESSION的生命周期。而POST和GET只要php执行完毕就会立刻被释放,也就没有了。):

1.php

?php

session_start();

//会话开始,这样你才可以调用session

$_SESSION['val']='123';

//直接声明全局变量val的值等于123

echo $_SESSION['val'];

?

a href="2.php"跳转到第二个页面去看看。

/a

2.php

?php

session_start();

echo $_SESSION['val'];

//直接输出全局变量val.

?

--------------------------------------------------------------------------------

最后一个办法,cookie。饼干,哈哈不过呢,这个办法不好用,因为cookie是存放在客户端上(也是全局变量),session是存放在服务器上。这是两者唯一的不同

然后捏,我也没用过cookies,所以呢。我只能百度一个给你咯,调用办法一样的$_COOKIE['名称']

?php

setcookie("user", "Alex Porter", time()+3600);

//创建一个名为user的cookie变量,它的值是Alex Porter。它将在一个小时以后过期,也就是不能访问了

echo $_COOKIE['user'];

//你还要刷新一下页面才可以生效= =。。

?

?

php中超级链接如何使用post方法传递参数

表单直接传递,代码如下!

创建go.php 文件中的代码如下!

?php

@$name = $_POST['name'];

if(!empty($name)){

echo $name;

}else{

echo 'form action="go.php" method="post"

input type="text" name="name"

button提交/button

/form';

}

?

代码解释

@$name = $_POST['name'];

@错误抑制

1、常见变量$name  =  post过来的name值

2、empty($name)检查是否为空,在前面加上!表示不为空,不为空就显示$name的值

3、为空显示表单

4、action="go.php"表示表单填写的值将传递到,go.php  

5、method="post"  表示传递方式为post

6、input type="text" name="name"文本输入框

7、button提交/button  提交按钮

php文件与php文件之间如何传递数据?

通过session来储存

?php

session_start();

$_SESSION['username'] = "userName";

?

在其它页面直接取出就行了

?

session_start();

echo $_SESSION['username'];

?

通过url传向其它页面传递参数

other.php?user=xxx

 或在php重定向到其它页面时

$username = "xxx";

$home_url = 'logIn.php?user='.$username;

header('Location:'.$home_url);

其它页面用$_GET["user"]来接收

3.通过表单向其它页面传送参数

其它页面用$_POST["user"]来接收


当前标题:php怎么向链接传送数据,php上传数据
本文来源:http://azwzsj.com/article/hcdise.html