开始构建应用之前最好先了解各部分如何连接在一起。你已经创建了你的第一个PHP脚本,而且这个PHP脚本表现还不错。不过通过邮件来得到表单结果还不够好。你需要一种方法来存储表单的结果,从而只要需要就能一直保存,并在希望得到数据时能够获取。MySQL数据库可以存储你的数据,实现安全的维护。不过需要先把PHP脚本与MySQL数据库连接起来才能达到目的。
用户的Web浏览器发出HTTP请求,请求特定Web页面。例如,用户通过HTML表单的形式要求搜索一种商品。 Web服务器收到搜索请求,获取该脚本文件,并将它传到PHP引擎,要求它处理。PHP引擎开始解析脚本。脚本中有一条连接数据库的命令,还有执行一个查询(搜索商品)的命令。PHP打开通向MySQL数据库的连接,发送适当的查询。
以下是最有用的一些MySQL数据类型。要记住,你可以使用其中任何类型来描述一个特定数据列中存储的数据。他们的任务就是准确无误地为你存储数据。这些数据在我们网站编程中会经常用到,我们有必要掌握它们的一些用法。
CHAR或CHARACTER,它很严格,希望数据是定长的。如果你的文本总是相同的长度,这种类型会非常的高效。INT或INTEGER认为数字应当是整数,不过并不是畏惧负数。他还能存储短整数,在这种情况下称为TINYINT。
DEC,这是DECIMAL的简写。他会提供你请求的全部小数位数(至少在他达到上限之前)。DATETIME或者TIMESTAMP,它可以跟踪日期和时间。而DATA可以跟踪日期,不过它不关心时间,TIME则不关心日期。BLOB,它喜欢大块的二进制数据。TEXT,它非常擅长存储大量文本,比CHAR或VARCHAR多得多的文本。
要从数据库中删除数据,需要一个新的SQL命令:DELETE。我们将在一个新的Remove email脚本中使用DELETE,它从数据表中删除客户的数据。实际上,为此我们需要一个新的脚本和一个新的web 表单,不过首先需要了解DELETE。DELETE是SQL命令,它会从一个数据表删除数据行。正因如此,使用时要特别当心,因为它完全能够在眨眼之间就爱那个填满数据的一个表完全清空。
DELETE可以用来精确地指定一个或一些特定的行进行删除。要用DELETE精确地指定想要删除的行,需要增加一个WHERE子句。如果还记得SELECT命令中使用的WHERE子句,应该知道利用WHERE可以抽取出一个查询中的特定行。通过在WHERE命令中使用WEHERE子句,我们可以准确地指定要删除的特定数据行,而不是清空整个表。WHERE子句允许我们只关注向要删除的行。WHERE子句中的具体测试会完成一个比较,对于表中的每一行都会做这样一个比较。等号会检查表中列的各个值,来查看哪些行的值与表中的值匹配,则删除该行。