引用上篇文章的开场白:
我接触PHP也不是很久,所以有什么不足的地方,欢迎各位指正,让大家见笑了。
这篇小教程的对象是PHP初学者,都是些最简单、最基本的东西,因此高手们可以略过哦。
为了让各位初学者提起兴趣、尽快入门,这里写的是将是最简单,最基本的PHP程序,相信你只要有一点点的PHP基础知识,10分钟之内就能把它学会。没有PHP基础知识也没有关系,只要耐心的看,学会它也不会超过一个小时的。
我写这篇文章的目的是,和大家一起共同学习、共同进步,然后将PHP初学者们对PHP的恐惧心理驱赶到十万八千里之外,让大家增强自学PHP的信心,其实PHP并不难学,只要静下心来学,一定能够学有所成的。好了,说了这么多废话,赶快开始吧,不然被骂的,呵呵。
[设计思路]
实现:添加、查看、修改、删除,这几个基本功能,为从简单入手,我们就只做这些吧。
[程序规划]
呵呵,不要紧张,我们这里不会搞什么软件工程,做什么需求分析啊,画什么流程图啊之类令人吐血的事情了,呆会我被扁的。当然正规的开发这些是必须的哦,因此有空一定要去了解一下。
input.php ---------- 用来添加联系人信息的表单 (当然这个可以用html咯,但为了避免混淆,就全部统一为PHP格式吧)
post.php ---------- 用来处理表单数据
conn.php ---------- 用来连接数据库
show.php ---------- 用来显示数据
edit.php ---------- 用来修改数据
edited.php ---------- 用来处理修改数据
del.php ---------- 用来删除数据
[数据规划]
也就是数据库设计了,为了好看点就写成四个字了。不要介意。我们这里也不搞什么扯蛋的建模了,也会吐血的,呵呵。好,我们开始,痛苦了一点,没落伍不能截图,我用字符画了一个其丑无比的表格,没办法,就这水平了,大家将就着看下吧,呵呵,哭吧。
____________________________________________________________________________
| 字段 | 类型 | 整理 | 属性 | NULL | 额外 |
| id | int(10) | | UNSIGNED | 否 | auto_increment |
| name| varchar(10) | utf8_general_ci | 否 | |
| sex | tinyint(1) | 否 | mobi | varchar(11) | utf8_general_ci | | 否 | email | varchar(50) | utf8_general_ci | 否| |
| addr | varchar(50) | utf8_general_ci 否
关于数据库,我大概的讲一下哦:
id 大家再熟悉不过了吧?一组数据的唯一的标识。比如说你在落伍的ID咯,点你的ID就出现一堆关于你的信息,这就是唯一的标识。
int(10)就是数据类型了,代表10位的整数,UNSIGNED是非负的意思,auto_increment 是自动添加。由于id设置为自动添加,因此我 们建好它后就不用再管了,让它自生自灭吧,呵呵。
name 这个字段用来储存名字,注意字段名可以随便命名的,比如现在“name”,但为了方便后面的讲解,大家暂时委屈一下跟我命名吧。 建议命名规则为小写字母哦,中间加下划线也可以。varchar(10)储存中国人,10个字应该够了吧?呵呵,不管了,就这样吧。varcha r和char,前者省空间,后者省时间……扯远了,这些数据类型,还是大家自己google了解一下吧。utf8_general_ci,字符集,这个很 重要哦,你一定要清楚自己的数据库用的什么字符集,不然会出现一堆乱码哦。说到字符集,我大力推荐大家使用utf8了。
sex 用来储存性别,为什么类型是tinyint(1),1位小整数够用吗?当然够用了,模仿下二进制,用0表示女,用1表示男就OK了,刚才忘记说 了一点,可能有人还不明白,NULL,否,就是不为空的意思。
mobi 我取得名字也都很直观了,下面就快速带过吧,mobi用来储存手机号码,当然是11位咯。
email 用来储存电子邮件,50位应该绰绰有余了。
addr 用来储存通讯地址,宇宙、地球、国家、省、市、乡、镇、村都写进去,50位也应该够了吧,呵呵。
那么我们现在就来创建数据库咯,建议大家使用phpMyadmin用SQL方式导入下列语句,因为这样是最方便的了:
复制代码 代码如下:
CREATE TABLE `addr_list` (
`id` int(10) unsigned NOT NULL auto_increment,
`name` varchar(10) NOT NULL,
`sex` tinyint(1) NOT NULL,
`mobi` varchar(11) NOT NULL,
`email` varchar(50) NOT NULL,
`addr` varchar(50) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
当然你用MySQL Command Line Client手工输入也可以哦,如果你不嫌累的话,呵呵,不过要注意一点,就是把所有的 `` 符号去掉。也就是TAB键上面那颗诡异的按键。不然可能会出现意外哦。
好了,那就等大家先把数据库搞定了再说吧,打了半天字,手好酸,肚子也好饿,呵呵。先去吃饭,一会再继续了,还有4分就落伍了,希望尽快吧,那样就可以截图了,不过用字符画表格还是蛮有意思的,呵呵。
恩,下面我们就将一个一个的做网页,一个一个的写程序了:
革命尚未胜利~我们接着来。需要对上面进行点补充:要先创建一个数据库才能导入哦!
为了区分和方便讲解,我把数据库命名为list,把数据表命名为addr_list,还是把完整的SQL语句写出来吧。
首先创建数据库 list:
复制代码 代码如下:
CREATE DATABASE `list` ;
然后创建数据表 addr_list:
复制代码 代码如下:
CREATE TABLE `addr_list` (
`id` int(10) unsigned NOT NULL auto_increment,
`name` varchar(10) NOT NULL,
`sex` tinyint(1) NOT NULL,
`mobi` varchar(11) NOT NULL,
`email` varchar(50) NOT NULL,
`addr` varchar(50) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
好,我们现在来做网页+写程序吧:
当前1/3页 123下一页
以上就介绍了 30分钟学会用PHP写带数据库的简单通讯录第1/3页,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。