
正文
php文件如何传递数据 php如何传值
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
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"]来接收
相关问答
Q1: 两个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"]来接收
Q2: PHP中如何将变量传到另一个PHP网页中,详情进来看下。
一、用form表单中的hidden隐藏域。这种方法就是把待传递的变量用表单的方式再次传送,比如在用户登陆后,把他的信息如$username、$id等等信息用表单发送到下一张网页,当然,很多情况,是诸如text、option等等框体不想再被看到的话,可以采用隐藏的输入域。下面是一个实例,假设$username是经过上页为验证身份发送到本页并且在本页经过验证的变量,想传递到下一页中去,那么可以建立文件test4.PHP:
?$username="张明";?
form method="post" action="test5.php"
input type="hidden" name="username" value="?echo $username?"
input type="submit" name="submit" value="看看"
/form
test5.php:
?echo "你好,$username,欢迎光临php自学网!";?
打开apache服务器,输入在页面的按钮上点击,会发现新出的网页上$username的值已经传送过来了。
当然这种方法的弱点是很明显的,它还要再使用一个表单,而且在test5.php的网页上想要刷新的话还要重新发送,这显然是不太友好的。
二、使用session。后来,我查找了一些关于session的文章,觉得这时传递变量的一种非常好的方法。下面通过举例子来说明:
建立一个新文件test6.php:
?session_start(); //初始化一个session
session_register("username"); //注册一个session变量
$username="张明"; //要传递的变量值
echo "a href=test7.php去看看/a";
?
test7.php:
?session_start(); //初始化一个session
echo "你好,$username,欢迎光临php自学网!";? //显示传递过来的变量
使用这种方法的时候要注意:?session_start();?应该放在文件的最前面,即"?"前面不应有任何内容,包括空格,这是我调试多次未成功找出的原因。
这个变量只能在当前打开的浏览器中传递,若要在新打开的窗口中也能传递,刚要按下面的方法来做:
文件:test8.php
?session_start();
session_register("username");
$username="张明";
echo "a href=test7.php?$a=".session_id()." target=_blank去看看/a"; //将当前的session的id值传给下一个窗口。
?
test7.php
?session_start();
echo "你好,$username,欢迎你的光临!";?
三,通过cookie
建立文件test9.php
?SetCookie("username","张明");//把username设置到cookie中去
echo "a href=test5.php target=_blank去看看/a";?
文件test5.php
建立test5.php:
?echo "你好,$username,欢迎你的光临php自学网!";?
总结:以上只是一些常用的方法,还有很多的方法,如可以使用数据库,memcache等等.在此不做过多介绍.
Q3: 如何从一个php文件向另一个地址post数据
php调接口都是通过curl来完成的。
下面是我项目中的一个方法:
$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文件如何传递数据的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php如何传值、php文件如何传递数据的信息别忘了在本站进行查找喔。







