|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
开发相册系统过程中就有过这样的问题,因为没有交流好,出现重复工作问题,因为文档没有详细的说明而经常临时问对方。 在PHP中的处置窗体数据比其它网页法式言语更复杂――假如你利用这类言语一段工夫后,你会发明这是一个不成辩论的现实。这类操作的简略单纯性使它可以轻易地处置更加庞杂的窗体事务,包含明天会商的主题,即在统一个窗体中经由过程多个按钮来处置分歧的义务。
为何利用多个提交义务?
在我回覆这个成绩之前,先让我回覆一个很明显的成绩:既然很多窗体更合适单一的提交按钮,为何有时人们需求的是两个(或是更多)的提交按钮?
对这一成绩最好的注释办法是用我比来开辟项目中的一个实例来讲明。在这一项目中,我的义务是给一个藏书楼创立一个具体目次查询体系。书本标题被贮存在数据库中,而办理员将可使用一个基于阅读器功效的界面来检查个中任何一本书的纪录,然后对这一纪录上选择履行四种操作之一:成员还书挂号,成员借书挂号,书本丧失纪录和书本发卖纪录。
以上一切义务都要经由过程一个自力窗体来处置,如许就需求响应的按钮来呼应这些义务。传入到窗体的数据将以分歧的体例处置,这取决于被点击的按钮(借书/还书和成员纪录互相联系关系;丧失/发卖纪录改动具体目次表)。因为一个窗体只能处置一个独一的义务,然而不异的PHP剧本可以依据被点击的按钮和履行适合的代码段来处置以上四种义务。因而就需求处置多个提交义务按钮的单一窗体,和完成分歧按钮的主动呼应的窗体处置代码段。
我起首罗列一个复杂例子:一个提交按扭的窗体。如许可以让你清晰地舆解根基概念,而且为将要讲述的庞杂典范打下铺垫。这里是一个窗体:
<html><head>Single-button form</head>
<body>
<form action="processor.php" method="post"> Enter a number: <input type="text" name="number" size="3"> <br>
<input type="submit" name="submit"> </form>
</body>
</html>
以下的是挪用提交义务的processor.php剧本:
<?php
// check for submission
// retrieve value from posted data
if ($_POST['submit'])
{
echo "You entered the number " . $_POST['number']; }
?>
当一个窗体被提交给PHP剧本时,依据利用的提交办法(本文我假定为POST),PHP主动创立一个特定的$_POST或$_GET数组。键入到窗体输出域内的数值会主动转化成数组中的关头数据,并可使用惯例数据符号来会见这些数据。
出格值得注重的是,若何在以上剧本中处置提交义务的按扭。当窗体被提交时,提交按钮依据本人实践的“name”改变成$_POST中的一个元素。添加以下一行代码就很清晰了:
print_r($_POST);
为了懂得以上PHP剧本,你可以检查数组的外部布局,并可以清晰地看到分歧窗体控件之间的互相接洽。
然后大吼:别人可以,我为什么就不可以?(是不是有点阎罗教练的味道,默默的确是电影看多了,抽嘴巴是会痛的,各位其实明白这个道理了就行了) |
|