首页 > 语言 > 关键词  > php最新资讯  > 正文

在同一窗体中使用PHP来处理多个提交任务

2008-05-04 11:21 · 稿源:新云

在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脚本,你可以查看数组的内部结构,并可以清楚地看到不同窗体控件之间的相互联系。

举报

  • 相关推荐
  • 真我新机撞脸iPhone 17 Pro:镜头排布一模一样

    博主数码闲聊站曝光了真我新机,该机采用横向大矩阵DECO,摄像头排布跟即将发布的iPhone 17 Pro一模一样。该博主爆料,真我将会抢先苹果发布这款新品。 如图所示,真我新机的三摄布局跟iPhone 17 Pro一致,唯一区别是iPhone 17 Pro相机右侧配备LIDAR激光雷达扫描仪,真我没有这项配置。 另外,渲染图显示真我新品搭载骁龙7 Gen4平台,这意味着该机是一款中端产品。

  • iPhone 18 Pro首发!苹果最强基带曝光

    上个月微软面向商业客户推出了Surface Laptop 5G版本,它支持Nano SIM卡和eSIM两种方式,还可作为热点为其他设备提供网络。在Surface Laptop推出5G之际,苹果也在着手准备5G版Mac设备。 苹果记者Mark Gurman爆料,苹果最快会在2026年在Mac电脑上配备自研5G基带芯片,这将是苹果史上首款支持5G网络的Mac设备。 据悉,2026年的Mac电脑将搭载苹果新一代基带芯片C2,这颗基带由iPhone 18 Pro率先搭

  • 苹果最薄手机要火:王腾想买iPhone 17 Air

    今年9月苹果将发布iPhone 17系列,除了常规的iPhone 17、iPhone 17 Pro和iPhone 17 Pro Max之外,苹果还将带来全新的iPhone 17 Air,定位轻薄,它将替代Plus成为苹果的新系列,这是史上最薄苹果手机。 博主数码闲聊站爆料,iPhone 17 Air做了双面冷雕工艺,主要是为了减薄,电池差不多就3000mAh,机身厚度是5.Xmm,接下来就等苹果验证看看超轻薄是不是第一生产力。 对于iPhone 17 Air,REDMI总经理

  • 国家网信办约谈英伟达 要求说明漏洞后门问题并提交证明

    英伟达H20芯片被曝存在安全漏洞和后门风险,中国网信办7月31日依据相关法规约谈该公司,要求其就芯片安全问题作出说明并提交技术验证材料。H20是美对华出口管制下的"特供版"AI芯片,经降规设计后于7月15日恢复供应。英伟达CEO黄仁勋此前访华时曾表示对重返中国市场"非常高兴",期待为中国客户提供高性能计算支持。此次安全风波引发监管关注,凸显中美科

  • iPhone 17 Air/Pro电池对比:厚度差异明显

    有博主晒出了iPhone 17 Air和iPhone 17 Pro的电池对比照。 爆料称iPhone 17 Air的电池厚度只有2.49mm,是iPhone 17 Pro的一半左右,其容量只有2800mAh(iPhone 17 Pro电池容量未知)。 作为一款超薄机型,iPhone 17 Air的电池容量没有突破3000mAh大关,这个容量比2016年上市的iPhone 7 Plus还要小,后者配备了2900mAh电池。 据悉,iPhone 17 Air电池缩水的主要原因是机身过于轻薄,其厚度在5.5mm左右,是苹果

  • 曝iPhone 17 Pro要涨价:苹果扛不住了

    当地时间7月30日,美国总统特朗普发文称,自8月1日起,美国将对来自印度的商品征收25%的关税。 分析师称,若25%的关税生效,苹果的净利润将会受到重大影响,因为印度约占iPhone总出货量的20%,其中大部分销往美国,价值约400亿美元。 更严重的是,短期内苹果无处可去,只能承担关税带来的负面影响,如今要在美国大规模组装iPhone几乎不可能,而且可能需要数十年才能实�

  • 曝iPhone17Pro起始存储翻倍 或取消128GB

    苹果即将于2025年发布的iPhone17Pro系列将迎来重大存储升级,入门机型容量从现行的128GB直接提升至256GB,但起售价也将同步上涨50美元至1049美元(约合人民币7500元)。这一调整意味着该系列将彻底取消128GB版本,实现全系256GB起步。 尽管定价较前代128GB机型有所提高,但对比当前256GB版本的iPhone16Pro(售价1099美元),消费者仍能享受50美元的价格优惠。

  • iPhone 17 Pro橙色机模曝光 全系所有配色揭晓

    ​近日,知名科技博主Sonny Dickson提前晒出iPhone17系列四款机型全配色方案及核心设计细节。据披露,该系列在延续经典黑白基调的同时,首次引入多款鲜明配色:iPhone17Pro系列提供黑、白、蓝、橙四色,其中橙色以高饱和度成为最抢眼选项;iPhone17Air推出黑、白、浅金、天蓝四款清新配色;标准版iPhone17则包含黑、白、浅蓝及粉色,满足多元化审美需求。 工业设计层面,iPhone17系列�

  • iPhone 17 Pro电池曝光:美版和国行版不一样

    科技博主Majin Bu爆料iPhone17 Pro将采用L型钢制外壳电池提升散热,美版支持eSIM而国行版保留物理SIM卡槽。新机采用横向矩阵三摄设计,配备4800万像素主摄和LiDAR扫描仪,搭载A19 Pro处理器、120Hz高刷屏及均热板散热系统,内存升级至12GB。受关税影响,分析师预计其售价将首次突破1000美元,起售价或达1049美元。

  • 7年前的iPhone凭什么被炒成千元神机!二手iPhone XS受年轻人追捧 比安卓旗舰更好用

    2018年9月14日,当蒂姆库克在美国史蒂夫乔布斯剧院发布iPhone XS的时候,当时并未激起太多波澜。 可谁能想到7年后,这款已经被苹果塞进过时产品”棺材板产品,在中国社交平台上二次翻红。 一个月前,苹果上新iOS 26的同时,更新了自家的过时产品清单”,其中就包括2018年发布的iPhone XS系列。 可年轻人反手给它来了一个复活,某鱼上成色好的XS标价上千元,评论区上周850没