侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

30分钟学会用PHP写带数据库的简单通讯录第1/3页

php  /  管理员 发布于 7年前   179

引用上篇文章的开场白:

  我接触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 ;   好,我们现在来做网页+写程序吧:
123下一页阅读全文


  • 上一条:
    php中看实例学正则表达式
    下一条:
    剖析 PHP 中的输出缓冲
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • 用Time Warden监控PHP中的代码处理时间(0个评论)
    • 在PHP中使用array_pop + yield实现读取超大型目录功能示例(0个评论)
    • Property Hooks RFC在PHP 8.4中越来越接近现实(0个评论)
    • 近期文章
    • 智能合约Solidity学习CryptoZombie第四课:僵尸作战系统(0个评论)
    • 智能合约Solidity学习CryptoZombie第三课:组建僵尸军队(高级Solidity理论)(0个评论)
    • 智能合约Solidity学习CryptoZombie第二课:让你的僵尸猎食(0个评论)
    • 智能合约Solidity学习CryptoZombie第一课:生成一只你的僵尸(0个评论)
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-10
    • 2016-11
    • 2017-06
    • 2017-07
    • 2017-08
    • 2017-09
    • 2017-11
    • 2017-12
    • 2018-01
    • 2018-02
    • 2018-03
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2020-07
    • 2020-09
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-05
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-05
    • 2022-06
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-10
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2023-05
    • 2023-06
    • 2023-07
    • 2023-08
    • 2023-09
    • 2023-10
    • 2023-11
    • 2023-12
    • 2024-01
    • 2024-02
    • 2024-03
    • 2024-04
    • 2024-05
    • 2024-06
    • 2024-07
    • 2024-09
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客