如何简单使用WASP进行PHP开发(2)

2016-01-29 13:40 14 1 收藏

如何简单使用WASP进行PHP开发(2),如何简单使用WASP进行PHP开发(2)

【 tulaoshi.com - PHP 】

下面是模版式的HMTL代码,保存在 Todo/Entry/templates/index.chunk;

 <html
  <body
    <form name="entry" method="post"
      <h3Create Entry</h3
      <p
        Name:<br/
        <input type="text" name="Name"/
      </p
      <p
        Date Due (format mm/dd/yyyy):<br/
        <input type="text" name="Due"/
      </p
      <input type="submit" name="Add" value="Add"/
    </form
  </body
</html 

 这个页面是主要的输入界面,没有必要包含任何的数据操作的代码。这个页面仅仅包含了一个简单的表单和二个文本输入框和一个确认按钮。
 这是为登录界面要做的所有。访问/Todo/Entry的URL你会得到下面的图面:

 

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/php/)

 我们已经得到了正确的结果。这个页面唯一需要的事件就是为Add按钮添加单击事件,而我们仅要做的就是为这个事件修改事件处理代码。按照习惯,处理所有表单事件(包括其它一些事件)的代码在类 Chunk 的 handleEvents() 方法里面。
 下面是 Todo/Entry/EntryIndexPage.php 文件中的handleEvents()的代码:
 protected function handleEvents()
   {
     //Check for Add button presses
     if (Request::getParameter('Add') != null)
     {
         $oTask = new TaskWrapper();
         $oTask-fillFromRequest();
         $oTask-save();
         $this-redirect('../');
     }
   }

  代码:
  //Check for Add button presses
if (Request::getParameter('Add') != null)
{
  $oTask = new TaskWrapper();
  $oTask-fillFromRequest();
  $oTask-save();
  $this-redirect('../');
}

处理了用户在登录页面点击Add 按钮后的事件。当事件发生时,应该创建一个新的任务。因为文件框的命名为Name 和 Due 和数据库中表的字段名字相符合,所以我们可以使用代码:
$oTask = new TaskWrapper();
$oTask-fillFromRequest();
来创建一个新的 TaskWrapper对象,并且从表单中得到数据。在这种情况下,仅有Name和Due是处理的数据,数据表字段也少,感觉不到其便利,但是可以想像一下在处理有很多个数据时的便利。在以前得在$oTask对象中处理用户请求,然后操作数据库等等,但在这里大多数情况下不需要这样做。
代码:
$oTask-save();
可以来完成这些。当TaskWrapper对象没有设置主键时,这个方法将向数据库插入一条记录。如果以下面的方式创建对象
$oTask = new TaskWrapper(12);
并且调用save()方法,将会修改主键值为12的记录。

注意一下$this-redirect()方法,这个方法将会跳转到主页面,可以看到所有的记录。现在还没有书写主页面程序,所以还不能看到保存过的数据。

 

Main Todo Page (主要 Todo 页面)

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/php/)

用创建输入时的方法创建主要页面。首先创建模版 Todo/templates/index.chunk, 文件内容为:
  <html
  <body
    <h3{Title}</h3
    <li flexy:foreach="arTasks,key,task"{task[Name]} - <i{task[Due]}</i</li
    <p
      <a href="Entry/"Add Task</a
    </p
  </body
 </html

注意一个内部的代码,请把所有注意力集中到标记<li里面flexy中的foreac

来源:http://www.tulaoshi.com/n/20160129/1491019.html

延伸阅读
标签: PHP
PHP 通常被安装在 Linux/Unix 操作系统上,并且搭配 Apache 服务器一起使用。在将 PHP 与 Apache 服务器一起安装的时候,你有三种不同的安装方式可以选择:静态模块,动态共享 对象 (Dynamic Shared Object, DSO)以及 CGI 程序执行文件。 在这里我建议大家使用动态共享对象的模式来安装 PHP,这是因为这种安装...
标签: PHP
将 Sajax 连接到相册 利用刚刚创建的代码,我们将用 Sajax 迅速把相册从多页面应用程序转化成 活动 的 Ajax 应用程序。 因为相册主要有两个函数,get_table() 和 get_image(),这也是需要用 Sajax 导出的全部函数。事实上,为了通过 Sajax 调用这些函数,这些函数本身基本上不需要修改,很快我们就会看到,我们只需...
标签: PHP
扩展相册 使用 Sajax 把我们的相册变成 活动 的 Web 应用程序如此轻而易举,我们要再花点时间添加一些功能,进一步说明 Sajax 如何使从服务器检索数据变得完全透明。我们将为相册添加元数据功能,这样用户就能为他们的图片添加说明。 元数据 没有上下文说明的相册是不完整的,比如照片的来源、作者等。为此我...
/DownloadFiles\a\2003-09-07\(br> 在多人共同开发一个大型项目时,源代码的维护和版本维护是一件令人头疼的事情,由于多人开发,每个开发人员都拥有此项目的副本,所以如果要手动维护同一个文件多人的修改是十分困难的事情。 /DownloadFiles\a\2003-09-07\(br> 另外,可能你需要的项目的版本不是当前开发的最新的版本, 如果为了这个目...
标签: PHP
一、小序 HTML简单易学又通用,一般的PHP程序就是嵌入在HTML语言之中实现的。但是随着Web越来越广泛的应用,HTML的弱点也越来越明显了。XML的出现,弥补了这些不足,它提供了一个能够处理互联网上全部数据的通用方法。 二、HTML的局限性分析 1、 HTML的可扩展性差。虽然作为一般的应用,HTML应经够用了,但是在处理数学和化学...

经验教程

331

收藏

28
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部