论文部分内容阅读
本文可以学到
1 复习上一期的表单数据提交
2 PHP中如何调用MySQL数据库
网友聚会,来报名啦!
——在线活动报名表的制作
在线活动报名表的主要实现思路,与上一期的网上收藏夹类似,不过我们需要读取的表单信息会更多,所以使用数据库来存储数据。
假设我们设计的是一个开放型的活动,任何网友都可以报名参加,并且可以带P到2两个朋友,不过活动的总人数有限制。那么,每一条报名表需要包含以下信息:姓名、公司、联系方式、带朋友人数、附加留言等,在线报名表如图P所示。网友输入了对应的信息,提交以后,就可以查看已经报名的人员列表了(见图2)。因为数据保存在数据库中,所以还需要在数据库中建立对应的数据表。如果是在自己的电脑中安装的MySQL,可以从“开始,菜单打开MySQL客户端。在提示信息处,输入设置的管理员密码,即可登录并操作数据库了。我们将数据保存到test这个库的activity表下面,按照数据表的创建规则,可以在客户端输入创建数据表的命令来建立需要的数据表。本例分别使用name、company、contact、friend、messages来对应姓名、公司、联系方式、带朋友人数、附加留言,并且给每条信息分配一个自动增加的编号id和填写的时间time,具体的指令如下:
接着再以“SELCT*FROMactivity;”(不含引号)指令从activity数据表中读取所有数据,因为是新建立的表,所以显示数据为空。至此,数据表建立好了,就可以使用PHP来进行操作。
挖好“陷阱”等着别人跳
数据表设计好了,就像是挖好一个“陷阱”,等着别人往里跳了(則访问者填写并提交表单)。当然,这些还是需要PHP配合来提取、分析、管理这些数据才行。这次我们同样使用多个文件来存放不同类类信息和代码,其中header.html、footer.html、ioin.html分别用来存放页面头部、页面尾部、报名表单的HTML信息,config.php用来保存程序需要的公共信息,join.php和index.php分别用来处理申请加入和列表显示操作。
下面,我们分别针对config.php、join.php、index.php的重点部分进行讲解。一大堆的代码,估计你也懒得输入,其实你可以直接从前面提供的链接下载下面的源文件。
1、config.php文件代码
这个文件,主要用于数据库和报名表设置,以及数据库的连接。
要操作一个数据库,一般需要数据库服务器的地址$db_host,所使用的用户名$db_user和密码$db_pass,以及具体要操作的库$db_name,然后使用mysql_connect函数来进行连接,如果连接失败,程序就会调用die函数停止继续运行,并且调用mysql_error()函数显示错误信息。在第7行中,or用来表示逻辑或操作,如果前面的代码执行成功则后面的不会被执行。否则执行后面的代码。数据库连接成功,再使用mysql_select_db函数来选择将要进行操作的数据库,然后调用mysql_query函数来执行一条MySQL的指令“SET NAMES gbk”,使得我们操作数据库的字符集与数据表本身设置的字符集都为gbk。
mysql_query函数是在PHP进行数据库操作中,使用最多的一个函数,绝大部分的MySQL操作指令,都是通过它来执行的,例如:插入新的数据、更新已有的数据、读取已有的数据、删除已有的数据等,可以访问http://docs.php.net/manual/zh/function.mysqL-query.php查看该函数的具体用法。
第11行的$join_max表示我们限制总共多少人参加这个活动,第12行的$fieods设置需要读取的报名表单信息。
2、join.php文件代码
这个文件的主要作用是处理用产提交的表单信息,检查是否输入完整,参加人数是否满了,以及将报名信息存入数据库。鉴于源代码有点长。为节约版面这里就不列出了,大家可以从本文下载包中提取,其中含有带序号的版本。
第5到P8行,程序使用foreach来循环检查$fields所需要的表单信息是否都已经填写了。如果没有填写完整,则显示报名表单,让网友重新填写。如果填写完整了,就将相关的信息保存到$data数组中。为了防止输入的信息中可能存在单引号对数据库指令造成影响,第16行使用addsoashes函数,来进行处理。
第20行,程序设置了一条MySQL指令“SELECTCOUNT(id),SUM(friend)FROMactivity”,然后使用mysql_query函数将指令送到数据库查询,其中,COUNT(id)表示计算id字段的个数,也就表示报名信息总的条数,SUM(friend)表示计算friend字段的和,也就是表示网友带来朋友的总数。在MySQL之中,进行数据查询,就使用SELECT指令,告诉数据库在什么数据表中查询什么内容,然后数据库会根据指令将相关的信息取出来返回给$res,让我们印程序读取操作。同时,还可以使用MySQL提供的函数,例如COUNT、SUM等进行处理。
读取了数据以后,我们可以使用mysql_Rum_rows函数来检查是不是有数据读取到了,如果没有读取到数据,有可能我们设置的指令存在问题,需要仔细检查是否正确。
mysql_querV函数执行的结果,是将MySQL查询的结果返回到了$res之中,需要使用mysql_fetch_array函数,才能将实际的信息读取出來。mysql_fetch_array函数读取的结果$row,是一个数组的形式,对应我们查询的每条信息。
根据我们前面设置的查询指令,返回的查询信息只有一条,而且是一个数字下标索引的数组,有两个元素,编号。的元素表示报名信息总的条数,编号1的元素是网友带来朋友的总数。报名信息总的条数加上网友带来朋友的总数,就表示我们这个活动现在已经有多少人参加了。第26行,程序检查已有的人数加上网友报名的人数,是否在总人数限制范围以内,如果超过,则提示是否满了或者还可以参加多少人。
如果还可以参加,程序就将报名信息插入数据库保存起来,第28到29行,就用来处理报名信息的保存,首先操作$data构造出我们需要的数据$sql_fields和$sql_vaoues,然后放入“INSERTINTO”指令中执行,并检查执行是否成功。最后,数据库操作完成,调用mysql_close函数来关闭数据库连接。
3、index.php文件代码
这个文件的作用就是简单地从数据库读取数据,并进行列表显示。这里就不列出源代码了,大家可以直接从下载的压缩包中获得。
1 复习上一期的表单数据提交
2 PHP中如何调用MySQL数据库
网友聚会,来报名啦!
——在线活动报名表的制作
在线活动报名表的主要实现思路,与上一期的网上收藏夹类似,不过我们需要读取的表单信息会更多,所以使用数据库来存储数据。
假设我们设计的是一个开放型的活动,任何网友都可以报名参加,并且可以带P到2两个朋友,不过活动的总人数有限制。那么,每一条报名表需要包含以下信息:姓名、公司、联系方式、带朋友人数、附加留言等,在线报名表如图P所示。网友输入了对应的信息,提交以后,就可以查看已经报名的人员列表了(见图2)。因为数据保存在数据库中,所以还需要在数据库中建立对应的数据表。如果是在自己的电脑中安装的MySQL,可以从“开始,菜单打开MySQL客户端。在提示信息处,输入设置的管理员密码,即可登录并操作数据库了。我们将数据保存到test这个库的activity表下面,按照数据表的创建规则,可以在客户端输入创建数据表的命令来建立需要的数据表。本例分别使用name、company、contact、friend、messages来对应姓名、公司、联系方式、带朋友人数、附加留言,并且给每条信息分配一个自动增加的编号id和填写的时间time,具体的指令如下:
接着再以“SELCT*FROMactivity;”(不含引号)指令从activity数据表中读取所有数据,因为是新建立的表,所以显示数据为空。至此,数据表建立好了,就可以使用PHP来进行操作。
挖好“陷阱”等着别人跳
数据表设计好了,就像是挖好一个“陷阱”,等着别人往里跳了(則访问者填写并提交表单)。当然,这些还是需要PHP配合来提取、分析、管理这些数据才行。这次我们同样使用多个文件来存放不同类类信息和代码,其中header.html、footer.html、ioin.html分别用来存放页面头部、页面尾部、报名表单的HTML信息,config.php用来保存程序需要的公共信息,join.php和index.php分别用来处理申请加入和列表显示操作。
下面,我们分别针对config.php、join.php、index.php的重点部分进行讲解。一大堆的代码,估计你也懒得输入,其实你可以直接从前面提供的链接下载下面的源文件。
1、config.php文件代码
这个文件,主要用于数据库和报名表设置,以及数据库的连接。
要操作一个数据库,一般需要数据库服务器的地址$db_host,所使用的用户名$db_user和密码$db_pass,以及具体要操作的库$db_name,然后使用mysql_connect函数来进行连接,如果连接失败,程序就会调用die函数停止继续运行,并且调用mysql_error()函数显示错误信息。在第7行中,or用来表示逻辑或操作,如果前面的代码执行成功则后面的不会被执行。否则执行后面的代码。数据库连接成功,再使用mysql_select_db函数来选择将要进行操作的数据库,然后调用mysql_query函数来执行一条MySQL的指令“SET NAMES gbk”,使得我们操作数据库的字符集与数据表本身设置的字符集都为gbk。
mysql_query函数是在PHP进行数据库操作中,使用最多的一个函数,绝大部分的MySQL操作指令,都是通过它来执行的,例如:插入新的数据、更新已有的数据、读取已有的数据、删除已有的数据等,可以访问http://docs.php.net/manual/zh/function.mysqL-query.php查看该函数的具体用法。
第11行的$join_max表示我们限制总共多少人参加这个活动,第12行的$fieods设置需要读取的报名表单信息。
2、join.php文件代码
这个文件的主要作用是处理用产提交的表单信息,检查是否输入完整,参加人数是否满了,以及将报名信息存入数据库。鉴于源代码有点长。为节约版面这里就不列出了,大家可以从本文下载包中提取,其中含有带序号的版本。
第5到P8行,程序使用foreach来循环检查$fields所需要的表单信息是否都已经填写了。如果没有填写完整,则显示报名表单,让网友重新填写。如果填写完整了,就将相关的信息保存到$data数组中。为了防止输入的信息中可能存在单引号对数据库指令造成影响,第16行使用addsoashes函数,来进行处理。
第20行,程序设置了一条MySQL指令“SELECTCOUNT(id),SUM(friend)FROMactivity”,然后使用mysql_query函数将指令送到数据库查询,其中,COUNT(id)表示计算id字段的个数,也就表示报名信息总的条数,SUM(friend)表示计算friend字段的和,也就是表示网友带来朋友的总数。在MySQL之中,进行数据查询,就使用SELECT指令,告诉数据库在什么数据表中查询什么内容,然后数据库会根据指令将相关的信息取出来返回给$res,让我们印程序读取操作。同时,还可以使用MySQL提供的函数,例如COUNT、SUM等进行处理。
读取了数据以后,我们可以使用mysql_Rum_rows函数来检查是不是有数据读取到了,如果没有读取到数据,有可能我们设置的指令存在问题,需要仔细检查是否正确。
mysql_querV函数执行的结果,是将MySQL查询的结果返回到了$res之中,需要使用mysql_fetch_array函数,才能将实际的信息读取出來。mysql_fetch_array函数读取的结果$row,是一个数组的形式,对应我们查询的每条信息。
根据我们前面设置的查询指令,返回的查询信息只有一条,而且是一个数字下标索引的数组,有两个元素,编号。的元素表示报名信息总的条数,编号1的元素是网友带来朋友的总数。报名信息总的条数加上网友带来朋友的总数,就表示我们这个活动现在已经有多少人参加了。第26行,程序检查已有的人数加上网友报名的人数,是否在总人数限制范围以内,如果超过,则提示是否满了或者还可以参加多少人。
如果还可以参加,程序就将报名信息插入数据库保存起来,第28到29行,就用来处理报名信息的保存,首先操作$data构造出我们需要的数据$sql_fields和$sql_vaoues,然后放入“INSERTINTO”指令中执行,并检查执行是否成功。最后,数据库操作完成,调用mysql_close函数来关闭数据库连接。
3、index.php文件代码
这个文件的作用就是简单地从数据库读取数据,并进行列表显示。这里就不列出源代码了,大家可以直接从下载的压缩包中获得。