十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
一、用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等等.在此不做过多介绍.
两种方式可以实现,
1、用js获取get参数
url = location.href.toString();
strParam = url.split("?");
然后将获取到的参数,然后把strParam和iframe的URL拼起来,再dl.php里都$_GET数组即可
2、用php直接把参数拼到url路径里
3、js修改dl.php生成的html代码
1. get是从服务器上获取数据,post是向服务器传送数据。
2. get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。
3. 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。
4. get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,IIS4中最大量为80KB,IIS5中为100KB。
5. get安全性非常低,post安全性较高。但是执行效率却比Post方法好。
建议:
1、get方式的安全性较Post方式要差些,包含机密信息的话,建议用Post数据提交方式;
2、在做数据查询时,建议用Get方式;而在做数据添加、修改或删除时,建议用Post方式;
get 传值是网址是 ;xxx=xxxx xxx 是参数
post 要要提交表单的 地址就不会出现上面的那种
现在服务器上配置好邮件,php里面有发送邮件的函数sendmail
sendmail('邮件地址','邮件标题','邮件内容');
?php
if(isset($_POST['time']))
{
echo '您选择了';
switch($_POST['time'])
{
case 1:
echo '保存一周';
break;
case 2:
echo '保存一个月';
break;
case 3:
echo '保存三个月';
break;
}
}
?
form method="post"
label for="a_week"一周/labelinput type="radio" name="time" value="1"/
label for="a_month"一个月/labelinput type="radio" name="time" value="2"/
label for="three_month"三个月/labelinput type="radio" name="time" value="3"/
button type="submit"提交/button
/form不知道你具体的需求,从你的描述大概这样实现吧
通过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"]来接收