导航:首页 > 网站知识 > 网站是如何传参数的

网站是如何传参数的

发布时间:2022-10-21 12:59:17

A. 请教大神,php网址参数是怎么传递的

wap.php这个文件叫做单入口文件,就是指所有的文件都要从这个文件进入,参数是等号后面的这个字符串,例如:一般都是通过$_GET['c']的到Group的,c一般是定义了你的文件夹,a一般是定义了你的文件名,也就是Group文件下的index文件

B. 如何在页面之间传递变量

(1)Session
(2)Cookie
(3)Application
(4)URL地址中的参数
(5)通过隐藏字段来传递数据
(6)Server.Transfer
(7)通过序列化对象
(8)........

下面就分别一一介绍:
(1)使用Session
session对象是用来记录浏览器端的变量,是个别浏览器端专用的变量,对于每一个浏览器访问时都会自动产生一个seseion对象,该对象提供一个存储场所,用来存储仅仅对该访问者在会话的活动期间打开的网页可用的变量和对象。这样就用可以用来在Web间传递专对单个浏览器端使用的数据。其定义方法:session(“变量名”)=数值

如:Session["testTransmitVaraint"] = "testSession";

session对象所定义的变量只是浏览器端的专用变量,所以适用于局部会话间的网页数据传递。

(2)使用Cookie
cookie是在浏览页面时Web服务器在浏览器端所写入的一些小文件,cookie是存放在浏览器端本机磁盘上,而不是存放在服务端的。可以在发送数据时写入cookie,接收时读取cookie完成数据在Web页面间的传送。

发送页面
HttpCookie cookie = new HttpCookie("testCookie");
cookie.Value = TextBox1.Text;
Response.SetCookie(cookie);

取Cookie页
HttpCookie cookie = Request.Cookies["testCookie"];
Response.Write("<br>HttpCookie = " + cookie.Value);

(3)使用Application
application对象是用来记录整个网站信息的,是记录不同浏览器端共享的变量,无论有几个浏览者同时存取网页,都只会产生一个application对象实例。用户可以通过定义application整站共享变量来实现网页间的数据传递。其定义方法是:application(“变量名”)=数值

如:Application["testApplication"] = "testApplication";

application对象所定义的变量对于所有浏览端都是可见的,所以其使用场合是所有浏览端共享的全局数据传递。

(4)使用URL地址中的参数
URL方式是实现Web间数据传递最基本的方法,操作简单,可很方便地实现不同Web页面间的数据传递,但其安全性比较差。将要传递的数据附加在网页地址(URL)后面进行传递。如:http://192.168.0.1/testweb.aspx?username=liming,其中?后面所跟着的字符串便是传递的数据,=前的是变量名,=后面是数值,可以使用request对象来获取传递的数据。如:request(“username”)。这种方法在传递数据过程中其数据内容在URL栏中是显示的,用户能看到提交的内容。

以上四种方法的适用范围:简单变量如基本的数据类型的数据

(5)使用隐藏字段来传递数据
通过在网页上制作表单交互区域,用户在浏览器端输入数据,然后通过form提交到服务器,在提交后的接受form数据的页面里就可以接收到相应数据,即form的action页面中可以使用request对象来接收所传递的数据。

如:

发送页面:

}

接收页面:request(“UserID”)

利用form页面的文本框来接收用户数据的输入,通过submit按钮提交后在targetweb页面中使用request来接收数据。

适用范围:基本的数据类型的数据,不宜传递对象变量等复杂的数据

(6)使用Server.Transfer
这个方法稍微复杂一点,但在页面间值传递中却是特别有用的,使用该方法你可以在另一个页面以对象属性的方式来存取显露的值,当然了,使用这种方法,你需要额外写一些代码以创建一些属性以便可以在另一个页面访问它,但是,这个方式带来的好处也是显而易见的。总体来说,使用这种方法是简洁的同时又是面向对象的。
使用这种方法的整个过程如下:
1,在页面里添加必要的控件
2,创建返回值的Get属性过程
3,创建可以返回表单的按钮和链接按钮
4,在按钮单击事件处理程序中调用Server.Transfer方法转移到指定的页面
5,在第二个页面中,我们就可以使用Context.Handler属性来获得前一个页面实例对象的引用,通过它,就可以使用存取前一个页面的控件的值了
此方法的适用范围:简单变量如基本的数据类型的数据,复杂变量如结构、类变量、DataSet、DataTable等
具体的事例,请见原代码。

此方法的适用范围:简单变量如基本的数据类型的数据,复杂变量如结构、类变量、DataSet、DataTable等

(7)通过序列化对象
序列化是指将对象实例的状态存储到存储媒体的过程。在此过程中,先将对象的公共字段和私有字段以及类的名称(包括类所在的程序集)转换为字节流,然后再把字节流写入数据流。在随后对对象进行反序列化时,将创建出与原对象完全相同的副本。
在面向对象的环境中实现序列化机制时,必须在易用性和灵活性之间进行一些权衡。只要您对此过程有足够的控制能力,就可以使该过程在很大程度上自动进行。例如,简单的二进制序列化不能满足需要,或者,由于特定原因需要确定类中那些字段需要序列化。
为什么要使用序列化?最重要的两个原因是:将对象的状态保存在存储媒体中以便可以在以后重新创建出完全相同的副本;按值将对象从一个应用程序域发送至另一个应用程序域。例如,序列化可用于在ASP.NET 中保存会话状态,以及将对象复制到 Windows 窗体的剪贴板中。它还可用于按值将对象从一个应用程序域远程传递至另一个应用程序域。
关于序列化对象更详细的介绍,请参见微软的“.NET 中的对象序列化”

(8)结束语
上述介绍的是网页间数据传递的常用方法,各有千秋。其中URL方式和form方式实现方法简单,可实现网页间的简单数据传递,一般为字符串类型,其特点是安全性差,而且必须是连续访问两页面间数据传递。Cookie只能存放string类型的数据,如果想要存放更为复杂的数据类型,那么必须先将其转换为string类型。Application对象和Session对象操作相对复杂些,浏览量非常大的网页使用时应适量,而且使用结束后尽量清除,否则大量使用有可能会导致服务器的瘫痪。Session变量的安全性较高,可传递专用浏览端数据。具体应用决定了数据传递方式的选择,合理数据传递方式选择是Web页面的设计中的关键考虑因素。

C. ASP 两网页如何传递参数

一、需要传递参数的页面【test1.html】

1234567891011121314<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN"><HTML><HEAD><TITLE>test1.html</TITLE></HEAD><BODY><FORMMETHOD=POSTACTION="test2.asp">姓名:<INPUTTYPE="text"NAME="username">密码:<INPUTTYPE="password"NAME="userpassword"><INPUTTYPE="hidden"NAME="hidden_ID"value="123456"><INPUTTYPE="submit"value="提交"></FORM></BODY></HTML>

注意:隐藏参数和其他控件类型不一样的地方就是类型【TYPE="hidden"】,这是使用的关键。

二、接收参数的页面【test2.asp】

12345678910111213<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN"><HTML><HEAD><TITLE>test2.asp</TITLE></HEAD><BODY><%response.write"姓名:"&request("username")&""response.write"密码:"&request("userpassword")&""response.write"隐藏字段(hidden_ID):"&request("hidden_ID")&""%></BODY></HTML>

接收上个页面传递过的隐藏参数和接收其他参数方法是一样的,都是使用【request("控件Name")】

按照以上方法即可实现ASP传递的参数。

D. html网页如何传递接收地址参数

这个用js稍微处理一下就好了很简单

实现html页面的参数传递

方法一:
下面是javascrīpt的一种实现方法,这个函数是通过window.location.href中的分割符获得各个参数。
有了这个函数,就可以在页面之间传递参数了。
/*
*函数功能:从href获得参数
*sHref:http://www.artfh.com/arg.htm?arg1=d&arg2=re
*sArgName:arg1,arg2
*return:thevalueofarg.d,re
*/
functionGetArgsFromHref(sHref,sArgName)
{
varargs=sHref.split("?");
varretval="";

if(args[0]==sHref)/*参数为空*/
{
returnretval;/*无需做任何处理*/
}
varstr=args[1];
args=str.split("&");
for(vari=0;i<args.length;i++)
{
str=args[i];
vararg=str.split("=");
if(arg.length<=1)continue;
if(arg[0]==sArgName)retval=arg[1];
}
returnretval;
}
方法二:
html地址传递参数进行其他事情.
<scrīpt>
/*用途:接收地直栏参数取id=1根据ID的值*/
urlinfo=window.location.href;//获取当前页面的url
len=urlinfo.length;//获取url的长度
offset=urlinfo.indexOf("?");//设置参数字符串开始的位置
newsidinfo=urlinfo.substr(offset,len)//取出参数字符串这里会获得类似“id=1”这样的字符串
newsids=newsidinfo.split("=");//对获得的参数字符串按照“=”进行分割
newsid=newsids[1];//得到参数值
newsname=newsids[0];//得到参数名字
</scrīpt>
方法三:
<SCRIPTLANGUAGE="JavaScript">
functiongetvalue(name){
varstr=window.location.search;//location.search是从当前URL的?号开始的字符串例如:http://www.51job.com/viewthread.jsp?tid=22720它的search就是?
tid=22720
if(str.indexOf(name)!=-1){
varpos_start=str.indexOf(name)+name.length+1;
varpos_end=str.indexOf("&",pos_start);
if(pos_end==-1){
alert(str.substring(pos_start));
}else{
alert("对不起这个值不存在!");
}
}
</SCRIPT>
方法四:
做中英转换的时候,要准确的获取参数并取出,所以做了一个简单的html中用js获取当取地址栏的一个Object。
里面有三个方法:
1、request.QueryString("参数")//获取指定参数,返回字符串;
2、request.QueryStrings();//获取全部参数,并返回数组;
3、request.setQuery("参数","参数的值");//如果当前地址栏有此参数,那么将更新此参数,否则返回一个新的地址栏参数字符串。
例如:
当前地址栏参数字符串为:?name=a&site=never_online
alert(request.setQuery("name","blueDestiny"))
如果地址栏参数中有"name",那么返回?name=blueDestiny&site=never_online
setQuery方法有自动追加参数的功能。如:
当前地址栏参数字符串为:?site=never_online
alert(request.setQuery("name","blueDestiny"))
则返回?site=never_online&name=blueDestiny
同理,如果地址栏没有参数,也会自动追加参数
alert(request.setQuery("name","blueDestiny"))
返回?name=blueDestiny
<SCRIPTLANGUAGE="JavaScript">
<!--
//author:never-online
//web:never-online.net
varrequest={
QueryString:function(val){
varuri=window.location.search;
varre=newRegExp(""+val+"=([^&?]*)","ig");
return((uri.match(re))?(uri.match(re)[0].substr(val.length+1)):null);
},
QueryStrings:function(){
varuri=window.location.search;
varre=/w*=([^&?]*)/ig;
varretval=[];
while((arr=re.exec(uri))!=null)
retval.push(arr[0]);
returnretval;
},
setQuery:function(val1,val2){
vara=this.QueryStrings();
varretval="";
varseted=false;
varre=newRegExp("^"+val1+"=([^&?]*)$","ig");
for(vari=0;i<a.length;i++){
if(re.test(a[i])){
seted=true;
a[i]=val1+"="+val2;
}
}
retval=a.join("&");
return"?"+retval+(seted?"":(retval?"&":"")+val1+"="+val2);
}
}
alert(request.setQuery("e","b"))
//-->
</SCRIPT>

E. 在网页中传递参数

用session或者ViewState或者QueryString都可以

一般用QueryString的多一点,就是点击的那个页面链接写成(原始链接 + ? + para1=xxx¶2=xxx¶3=xxx)

然后你那个弹出的网页就在CS代码文件里写
string para1 = Request.QueryString["para1"].ToString();
string para2 = Request.QueryString["para2"].ToString();
string para3 = Request.QueryString["para3"].ToString();

然后PageLoad事件里写:
string myScript = "NVSViewerCtrl.OpenChannel(para1, para2, para3)";
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "MyScript", myScript, true);

然后网页里面的<script type="text/jscript" language="javascript">
NVSViewerCtrl.OpenChannel("192.168.1.13", "", 0);
</script> 就可以去掉了。

F. html网页如何传递地址参数

html网页如何传递地址参数:
function GetQueryString(name)
{
var reg = new RegExp("(^|&)"+ name +"=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if(r!=null)return unescape(r[2]); return null;
}
// 调用方法
例:<script type="text/javascript" src="<%=GetQueryString("id")%>.js"></script>

G. 在自己的网站把参数传到另一个网站(比如BAIDU)怎么做

传参数很简单的,找到他的url就可以了。
举个例子吧,比如往网络上传。“你好”这个参数。
http://www..com/s?wd=你好&tn=ichuner&bar=
提交到这个地址就可以了。不信你在地址栏输入后回车试试。
所以你可以取到你自己页面上输入的参数然后替换掉"你好"就可以完成你的意愿了。

注意:上面的url要取全了啊,不止是有下划线那部分,后面的也一起的。

才子_辉祝您愉快!

H. Get方式如何传递参数

在列出post与get的区别:
1.Post传输数据时,不需要在URL中显示出来,而Get方法要在URL中显示。
2.Post传输的数据量大,可以达到2M,而Get方法由于受到URL长度的限制,只能传递大约1024字节.
3.Post顾名思义,就是为了将数据传送到服务器段,Get就是为了从服务器段取得数据.而Get之所以也能传送数据,只是用来设计告诉服务器,你到底需要什么样的数据.Post的信息作为http请求的内容,而Get是在Http头部传输的。

get和post的区别
1get方式传递的参数可以在页面上看见,So安全性不高,反之post安全性高
2get方式传递的速度快。
在后台定义了get,set方法可以直接获取,不用getParameter("name");
$.get(....) $.ajax(....) $.getJSON(....)3个都是ajax传递
只是方式不同。
$.get()是以get方式传递到后台
$.ajax()需要你配置传递到后台的方式,而且功能比$.get()方法多,建议使用这个方法
$.getJSON()传递的是json数据类型

开发经验表明,两者最重要的区别是:get不能传中文,会乱码,而post就不会出现乱码问题了

首先看一下get、post的区别 1、 get是把参数数据队列加到提交表单的ACTION属性所指的URL中,值和表单内各个字段一一对应,在URL中可以看到。post是通过HTTP post机制,将表单内各个字段与其内容放置在HTML HEADER内一起传送到ACTION属性所指的URL地址。用户看不到这个过程。 2、 对于get方式,服务器端用Request.QueryString获取变量的值,对于post方式,服务器端用Request.Form获取提交的数据。两种方式的参数都可以用Request来获得。 3、get传送的数据量较小,不能大于2KB。post传送的数据量较大,一般被默认为不受限制。但理论上,因服务器的不同而异. 4、get安全性非常低,post安全性较高。 5、 <form method="get" action="a.asp?b=b">跟<form method="get" action="a.asp">是一样的,也就是说,action页面后边带的参数列表会被忽视;而<form method="post" action="a.asp?b=b">跟<form method="post" action="a.asp">是不一样的。 另外 Get请求有如下特性:它会将数据添加到URL中,通过这种方式传递到服务器,通常利用一个问号?代表URL地址的结尾与数据参数的开端,后面的参数每一个数据参数以“名称=值”的形式出现,参数与参数之间利用一个连接符&来区分。 Post请求有如下特性:数据是放在HTTP主体中的,其组织方式不只一种,有&连接方式,也有分割符方式,可隐藏参数,传递大批数据,比较方便。 总而言之:当我们在提交表单的时候我们通常用post方式,当我们要传送一个较大的数据文件时,需要用post。当传递的值只需用参数方式(这个值不大于2KB)的时候,用get方式即可。
所以对于ajax提交两者用法自然就明了了

I. 怎样在网页之间传递参数

有两种方式一种是将你的标志数据保存到session,cookie,application中 在另一个页面调用相应的session,cookie,这个对服务器的压力压力比较大。
还有一种是使用response来传值response.rediect ("你的传页面?你要传的值(注意给个标识例如id =2))
然后再你传的页面获取使用request.quertstring("id")即可

阅读全文

与网站是如何传参数的相关的资料

热点内容
网络共享中心没有网卡 浏览:521
电脑无法检测到网络代理 浏览:1374
笔记本电脑一天会用多少流量 浏览:575
苹果电脑整机转移新机 浏览:1376
突然无法连接工作网络 浏览:1058
联通网络怎么设置才好 浏览:1224
小区网络电脑怎么连接路由器 浏览:1033
p1108打印机网络共享 浏览:1212
怎么调节台式电脑护眼 浏览:695
深圳天虹苹果电脑 浏览:932
网络总是异常断开 浏览:612
中级配置台式电脑 浏览:990
中国网络安全的战士 浏览:630
同志网站在哪里 浏览:1413
版观看完整完结免费手机在线 浏览:1459
怎样切换默认数据网络设置 浏览:1110
肯德基无线网无法访问网络 浏览:1286
光纤猫怎么连接不上网络 浏览:1473
神武3手游网络连接 浏览:965
局网打印机网络共享 浏览:1000