游戏行家 Publish time 2007-12-3 17:54:11

浅谈PHP语法(三)

<P class=article>上文中曾提到了PHP提交表单信息是很方便的。可是,提交的表单信息中的变量的生命周期是多长呢?本文就来?谈谈这个问题。 </P><P class=article>表单的参数会传给下一个处理程序,这是不用置疑的。因为,我们曾有过这样的例子。可它还会继续传给下一个处理程序吗? </P><P class=article>答案是否定的!一个Form表单所提交的参数只传给第一个处理程序,而下一个处理程序中它是不会起作用的。来看看下例吧: </P><P class=article>文件:table.html <BR><html> <BR><head><title>表单提交</title> <BR></head> <BR><body> <BR><form action=\"deal-1.php\"> <BR>输入你认为好的歌星:<input type=\"text\" name=\"start\" size=20 > <BR><input type=\"submit\" value=\"是他了,送出吧\"> <BR></form> <BR></body> <BR></html> <BR><BR>文件:deal-1.php <BR><FONT face=Arial color=#0000ff><?php <BR>echo \"<html><body>\"; <BR>echo \"你喜欢$start,对吗?<br>\"; <BR>echo \"<a href=\\"deal-2.php\\">试试是否会再传下去</a>\"; <BR>echo \"</body></html>\"; <BR>?></FONT><BR>文件:deal-2.php <BR><FONT face=Arial color=#0000ff><?php <BR>echo \"<html><body>\"; <BR>echo \"你说$start好吗?\"; <BR>echo \"</body></html>\"; <BR>?></FONT></P><P class=article>从上例中,我们可以看见:deal-1.php处理的结果为(假定我们在table.html中输入的是“张学友”): <BR><BR>你喜欢张学友,对吗? <BR>试试是否会再传下去 <BR><BR>说明表单提交了变量$start给deal-1.php,而在deal-1.php的显示结果中,若我们点击了链接“试试是否会再传下去”之后,deal-2.ph?p的处理结果为: <BR><BR>你说好吗? <BR><BR>很明显,$start没有传给deal-2.php。但是,我们又怎样延长$start的生命周期呢?其实,这很简单,使用参数传递的方法就行了。如?下,我们可以把deal-1.php改成这样: <BR><FONT face=Arial color=#0000ff><?php <BR>echo \"<html><body>\"; <BR>echo \"你喜欢$start,对吗?<br>\"; <BR>echo \"<a href=\\"deal-2.php?start=$start\\">试试是否会再传下去</a>\"; <BR>echo \"</body></html>\"; <BR>?></FONT><BR>分晰程序,你会发现只是在deal-1.php后加了一句“?start=$start”就行了,而这起的作用就是参数传递。如:http://zhuagk12.oso.?com.cn/cartoon.php?no=1其?后的为参数,no为参数名,其值为1。这样,会在cartoon.php程序中产生变量$no,其值为1。若传两个以上?参数,其间用&分隔。如:http://zhuagk12.oso.com.cn/cartoon.php?no=2&debug=1 <BR>为了延长参数的生命周期,我们还可以使用Cookie或Session来实现,这里不加多述,在以后的文章中你会见到它们的用法。 </P><P class=article></P>
Pages: [1]
View full version: 浅谈PHP语法(三)