-->ColdFusion 初级教程-->利用URL和Form传递变量

ColdFusion

后页 前页
目录
北极星书库
利用URL和Form传递变量


上文中已讲到,利用Client变量,Session变量,Application变量等,可以在不同的网页之间传递数据,下面介绍利用URLFORM来传递变量的方法。这两种方法可以在网页之间传递局部变量。


利用URL传递参数


你可以把参数附加在URL中,传递给该URL所指向的目标文件。用一个问号将要传递的参数与URL的文件地址隔开,在问号后面追加上变量名及其值,于是在目标文件内就可以引用该变量,这种变量即前文所述的URL变量。例如:


<A HREF="example.cfm?user_id=5&color=#mycolor#">


在这个例子中,变量user_id,值为5,和变量color,值为表达式#mycolor#的值,被传递给超链接所指的文件example.cfm


在目标文件example.cfm中,你可以用URL.user_idURL.color的形式来引用这两个变量,如:


<CFOUTPUT>


Your user ID is #URL.user_id# and


your favorite color is #URL.mycolor#.


</CFOUTPUT>


利用URL传参时,应注意以下几点:


·用一个问号将URL地址与要传递的参数隔开。


·用符号“&”将不同的参数隔开。


·不要使用空格,有些浏览器在检测到空格时,会将URL截断。


·不要使用特殊字符,如&,?,.,和#。


如果你要传递的值有可能包含空格和特殊字符,应使用函数URLEncodeFormat(),例如:


<CFSET FullName="Bob Smith">


<CFOUTPUT>


<A HREF="printname.cfm?FullName=#URLEncodedFormat(FullName)#">


Click here</A>


</CFOUTPUT>


关于此函数的详细信息请参阅CFML language reference


Form传递参数


通常,使用Form接收客户的输入,然后在Action属性所指的文件中利用Form变量得到客户输入的数据并作处理。你也可以利用隐藏字段从一个网页向另一个网页传递参数。例如,下面的Form中包含一个名为Customer_ID的隐藏字段,被传递到文件example.cfm中。


<FORM ACTION="example.cfm" METHOD="Post">


<INPUT TYPE="Hidden"


NAME="Customer_ID" VALUE="24">


<INPUT TYPE="Submit" VALUE="Enter">


</FORM>


在文件example.cfm中,你可以用Form.Customer_ID的形式引用该变量。


也可以用隐藏字段传递动态参数,如查询结果等,例如:


<FORM ACTION="example.cfm" METHOD="Post">


<CFOUTPUT QUERY="GetCustomer">


<INPUT TYPE="Hidden" NAME="Customer_ID"


VALUE="#Customer_ID#">


</CFOUTPUT>


<INPUT TYPE="Submit" VALUE="Enter">


</FORM>


小节:


本章介绍了ColdFusion的变量,其要点是各种变量的引用范围和生存期,另外要注意井号的使用。


后页
前页
目录
北极星书库