创建输入表单
设置好后端表之后
,就可以考虑处理数据插入和更新的
PHP。现在需要的是一些简单的函数
,这些函数将:
允许用户登录和添加贴子
。 将那些贴子转发给追随那个用户的人。
允许用户追随其他用户。
我通常在模型-视图-控制器(Model-View-Controller,MVC)应用程序框架(例如CodeIgniter)的上下文中工作,因为它提供了一套工具用于创建这些类型的应用程序。例如,我一般先创建两个模型(一个用于用户,另一个用于贴子),这两个模型使我可以与users、posts和following表交互,然后从这两个模型开始继续前进。
由于您可能已经在使用不同的框架,所以我决定在此不使用上述方法。相反,我选择一种更简单的、独立于框架的方法。对于本文,我们走走捷径,直接将记录添加到users表中,以创建一系列测试用户,供应用程序使用。我创建3个用户,并将他们的用户名设为
jane
、
tommy
和
bill
。
然后,创建一个简单的名为functions.php的
PHP文件,该文件将包含主要的功能。在该文件中要创建少量的函数,以支持微博客应用程序上下文中的动作。
如清单5所示,第一个函数是一个简单的函数,用于将内容添加到posts表中。
清单5.用于将内容添加到posts表中的函数
functionadd_post($userid,$body){ $sql="insertintoposts(user_id,body,stamp) values($userid,'".
mysql_real_escape_string($body)."',now())"; $result=
mysql_query($sql);}
为了测试这个简单的函数,还需要添加另外两个PHP文件。一个是index.php文件,目前包含一个基本的小表单—后面将向页面添加更多内容。另一个PHP文件是add.php,上述表单将被发布到该文件。清单6是index.php文件的摘录。请注意,在此使用一个PHP会话将一个用户ID值硬编码为1,这是我的数据库中的用户
jane
。现在这样做完全没有问题,但是在后面显然需要更改。
清单6.index.php文件摘录
<?phpsession_start();include_once('header.php');include_once('functions.php');创建输入表单
设置好后端表之后,就可以考虑处理数据插入和更新的PHP。现在需要的是一些简单的函数,这些函数将:
允许用户登录和添加贴子。
将那些贴子转发给追随那个用户的人。
允许用户追随其他用户。
我通常在模型-视图-控制器(Model-View-Controller,MVC)应用程序框架(例如CodeIgniter)的上下文中工作,因为它提供了一套工具用于创建这些类型的应用程序。例如,我一般先创建两个模型(一个用于用户,另一个用于贴子),这两个模型使我可以与users、posts和following表交互,然后从这两个模型开始继续前进。
由于您可能已经在使用不同的框架,所以我决定在此不使用上述方法。相反,我选择一种更简单的、独立于框架的方法。对于本文,我们走走捷径,直接将记录添加到users表中,以创建一系列测试用户,供应用程序使用。我创建3个用户,并将他们的用户名设为jane、tommy和bill。
然后,创建一个简单的名为functions.php的PHP文件,该文件将包含主要的功能。在该文件中要创建少量的函数,以支持微博客应用程序上下文中的动作。
如清单5所示,第一个函数是一个简单的函数,用于将内容添加到posts表中。
清单5.用于将内容添加到posts表中的函数
functionadd_post($userid,$body){ $sql="insertintoposts(user_id,body,stamp) values($userid,'".mysql_real_escape_string($body)."',now())"; $result=mysql_query($sql);}
为了测试这个简单的函数,还需要添加另外两个PHP文件。一个是index.php文件,目前包含一个基本的小表单—后面将向页面添加更多内容。另一个PHP文件是add.php,上述表单将被发布到该文件。清单6是index.php文件的摘录。请注意,在此使用一个PHP会话将一个用户ID值硬编码为1,这是我的数据库中的用户jane。现在这样做完全没有问题,但是在后面显然需要更改。
清单6.index.php文件摘录
___FCKpd___1
此外还应注意,我在表单上为状态消息留下了
空间,这将在add.php中动态地设置,如下面的清单所示。
清单7.用add.php文件将贴子添加到数据库中
<?phpsession_start();include_once("header.php");include_once("functions.php");$userid=创建输入表单
设置好后端表之后,就可以考虑处理数据插入和更新的PHP。现在需要的是一些简单的函数,这些函数将:
允许用户登录和添加贴子。
将那些贴子转发给追随那个用户的人。
允许用户追随其他用户。
我通常在模型-视图-控制器(Model-View-Controller,MVC)应用程序框架(例如CodeIgniter)的上下文中工作,因为它提供了一套工具用于创建这些类型的应用程序。例如,我一般先创建两个模型(一个用于用户,另一个用于贴子),这两个模型使我可以与users、posts和following表交互,然后从这两个模型开始继续前进。
由于您可能已经在使用不同的框架,所以我决定在此不使用上述方法。相反,我选择一种更简单的、独立于框架的方法。对于本文,我们走走捷径,直接将记录添加到users表中,以创建一系列测试用户,供应用程序使用。我创建3个用户,并将他们的用户名设为jane、tommy和bill。
然后,创建一个简单的名为functions.php的PHP文件,该文件将包含主要的功能。在该文件中要创建少量的函数,以支持微博客应用程序上下文中的动作。
如清单5所示,第一个函数是一个简单的函数,用于将内容添加到posts表中。
清单5.用于将内容添加到posts表中的函数
functionadd_post($userid,$body){ $sql="insertintoposts(user_id,body,stamp) values($userid,'".mysql_real_escape_string($body)."',now())"; $result=mysql_query($sql);}
为了测试这个简单的函数,还需要添加另外两个PHP文件。一个是index.php文件,目前包含一个基本的小表单—后面将向页面添加更多内容。另一个PHP文件是add.php,上述表单将被发布到该文件。清单6是index.php文件的摘录。请注意,在此使用一个PHP会话将一个用户ID值硬编码为1,这是我的数据库中的用户jane。现在这样做完全没有问题,但是在后面显然需要更改。
清单6.index.php文件摘录
<?phpsession_start();include_once('header.php');include_once('functions.php');创建输入表单
设置好后端表之后,就可以考虑处理数据插入和更新的PHP。现在需要的是一些简单的函数,这些函数将:
允许用户登录和添加贴子。
将那些贴子转发给追随那个用户的人。
允许用户追随其他用户。
我通常在模型-视图-控制器(Model-View-Controller,MVC)应用程序框架(例如CodeIgniter)的上下文中工作,因为它提供了一套工具用于创建这些类型的应用程序。例如,我一般先创建两个模型(一个用于用户,另一个用于贴子),这两个模型使我可以与users、posts和following表交互,然后从这两个模型开始继续前进。
由于您可能已经在使用不同的框架,所以我决定在此不使用上述方法。相反,我选择一种更简单的、独立于框架的方法。对于本文,我们走走捷径,直接将记录添加到users表中,以创建一系列测试用户,供应用程序使用。我创建3个用户,并将他们的用户名设为jane、tommy和bill。
然后,创建一个简单的名为functions.php的PHP文件,该文件将包含主要的功能。在该文件中要创建少量的函数,以支持微博客应用程序上下文中的动作。
如清单5所示,第一个函数是一个简单的函数,用于将内容添加到posts表中。
清单5.用于将内容添加到posts表中的函数
functionadd_post($userid,$body){ $sql="insertintoposts(user_id,body,stamp) values($userid,'".mysql_real_escape_string($body)."',now())"; $result=mysql_query($sql);}
为了测试这个简单的函数,还需要添加另外两个PHP文件。一个是index.php文件,目前包含一个基本的小表单—后面将向页面添加更多内容。另一个PHP文件是add.php,上述表单将被发布到该文件。清单6是index.php文件的摘录。请注意,在此使用一个PHP会话将一个用户ID值硬编码为1,这是我的数据库中的用户jane。现在这样做完全没有问题,但是在后面显然需要更改。
清单6.index.php文件摘录
___FCKpd___1
此外还应注意,我在表单上为状态消息留下了
空间,这将在add.php中动态地设置,如下面的清单所示。
清单7.用add.php文件将贴子添加到数据库中
___FCKpd___2
上述代码应该没有什么特别令人奇怪的东西。它只是接受表单的body字段和PHP会话中设置的userID,然后将它们传递给functions.php文件中的add_post()函数。然后,设置另一个会话变量(更新消息),并将用户重定向回index.php页面。
如果要测试这个小函数,惟一的方法是检查数据库中的posts表。这不太符合用户友好性,不是吗?这里需要的是更新主页上的贴子。为此,需要再将一个函数添加到functions.php文件中,并在主页上使用它。
添加一系列的更新
现在可以打开functions.php文件并在其中添??另一个函数。这一次,将函数命名为show_posts()。它将显示特定用户ID的所有贴子,如下面的清单所示。
清单8.show_posts()函数
functionshow_posts($userid){ $posts=array(); $sql="selectbody,stampfromposts whereuser_id='$userid'orderbystampdesc"; $result=mysql_query($sql); while($data=mysql_fetch_object($result)){ $posts[]=array( 'stamp'=>$data->stamp, 'userid'=>$userid, 'body'=>$data->body ); } return$posts;}
如果为这个函数传递一个用户ID,它将在一个多维数组中按日期倒序的顺序返回那个用户发出的贴子。要使用该函数,只需在index.php上调用它,并检索那个用户的所有贴子。由于对于每个记录只需处理少量的数据,这种查询可以很好地进行扩展。
清单9是添加到index.php页面的代码,这些代码就放在前面添加的表单之后。通过使用show_posts()函数和会话变量,可以获得登录的用户发出的所有贴子。如果没有贴子,则显示某种错误消息。如果有贴子,则在一个表中逐个显示它们—或者,如果想别致一点,可以使用自己的级联样式表(CSS)。
清单9.在index.php页面上显示贴子
<?php$posts=show_posts(创建输入表单
设置好后端表之后,就可以考虑处理数据插入和更新的PHP。现在需要的是一些简单的函数,这些函数将:
允许用户登录和添加贴子。
将那些贴子转发给追随那个用户的人。
允许用户追随其他用户。
我通常在模型-视图-控制器(Model-View-Controller,MVC)应用程序框架(例如CodeIgniter)的上下文中工作,因为它提供了一套工具用于创建这些类型的应用程序。例如,我一般先创建两个模型(一个用于用户,另一个用于贴子),这两个模型使我可以与users、posts和following表交互,然后从这两个模型开始继续前进。
由于您可能已经在使用不同的框架,所以我决定在此不使用上述方法。相反,我选择一种更简单的、独立于框架的方法。对于本文,我们走走捷径,直接将记录添加到users表中,以创建一系列测试用户,供应用程序使用。我创建3个用户,并将他们的用户名设为jane、tommy和bill。
然后,创建一个简单的名为functions.php的PHP文件,该文件将包含主要的功能。在该文件中要创建少量的函数,以支持微博客应用程序上下文中的动作。
如清单5所示,第一个函数是一个简单的函数,用于将内容添加到posts表中。