PHP+MySql+PDO实现简单增加、删除、修改、查询

最近学习中要使用PHP+MySql实现表单的增加、删除、修改、查询,看了很多简单案例后,写了一个简单的表单,下面请看代码,有错误的地方希望大佬们指教!

数据库名itcast , 表名emp_info

CREATE TABLE `emp_info` (
  `e_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `e_name` varchar(20) NOT NULL,
  `e_dept` varchar(20) NOT NULL,
  `date_of_birth` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  `date_of_entry` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00'
)CHARSET=utf8;

INSERT INTO `emp_info` VALUES 
(11,'张三','营销部','2019-05-22 17:42:00','2019-05-22 17:42:00'),
(12,'李四','人事部','2018-11-02 20:30:00','2019-05-26 20:30:00');

目录结构

PHP+MySql+PDO实现简单增加、删除、修改、查询_第1张图片

images和js没有的也没关系,只是样子不好看而已

查询的前台页面list_html.php




 
  
  员工信息列表
  
 
 
	
员工信息列表
ID 姓名 所属部门 出生日期入职时间 相关操作
编辑    删除
查询的结果不存在!

查询后台页面showList.php

query($sql);

    $rows = array();
        //执行成功
        //遍历结果集
        while( $row = $result->fetch()) {
            $rows[] = $row;
        }
     
}catch(PDOException $e){
    echo $e->getMessage().'
'; } define('APP', 'itcast'); //加载视图页面,显示数据 require './list_html.php';

新增前台页面add_html.php






添加员工







添加员工

姓名:
所属部门:
出生年月:
入职日期:

新增后台页面

 $v){
    
            $data = isset($_POST[$v]) ? $_POST[$v] : '';
    
            if($data=='') die($v.'字段不能为空');
    
    
            //把字段使用反引号包裹,赋值给$fields数组
            $fields[$k] = "`$v`";
    
            //把值使用单引号包裹,赋值给$values数组
            $values[] = "'$data'";
        }
    
        //将$fields数组以逗号连接,赋值给$fields,组成insert语句中的字段部分
        //implode — 将一个一维数组的值转化为字符串
        $fields = implode(',', $fields);
    
        //将$values数组以逗号连接,赋值给$values,组成insert语句中的值部分
        $values = implode(',', $values);
      
        //最后把$fields和$values拼接到insert语句中,注意要指定表名
        $sql = "insert into `emp_info` ($fields) values ($values)";
    
        //执行SQL
        if($res = $pdo->query($sql)){
            //成功时返回到 showList.php
            header('Location: ./showList.php');
            //停止脚本
            die;
        }else{
            //执行失败
            die('员工添加失败!');
        }
    }
   
    
}catch(PDOException $e){
    echo $e->getMessage().'
'; } define ('APP','itcast'); require './add_html.php'; ?>

修改前台页面update_html.php






员工信息编辑







修改员工信息

姓名:
所属部门:
出生年月:
入职日期:

修改后台页面emUpdate.php

query($sql)){
            header("Location: ./showList.php");
            die;
        }else{
            die('员工信息修改失败');
        }
    }else{
        //当没有表单提交时,查询当前要编辑的员工信息,展示到页面中
        $pdo = new PDO($dsn,$user,$pwd);
        
        //编写SQL语句,查询相应ID的员工数据
        $sql = "select * from `emp_info` where `e_id`=$e_id";
    
        $result = $pdo->query($sql);
            
        $rows = array();
        
        while($row = $result->fetch()){
            $rows[] = $row;
        }
    }
}catch(PDOEXception $e){
    echo $e->getMessage().'
'; echo $e->getLine().'
'; echo $e->__toString().'
'; } //显示员工修改页面 define('APP', 'itcast'); require './update_html.php';

删除页面empAdd.php

query($sql);
   
    $rows = array();
    
    while($row = $result->fetch()){
        $rows[] = $row;
    }
}catch(PDOException $e){
    echo $e->getMessage().'
'; } define ('APP','itcast'); //在当前页面刷新数据 header ("Location: ./showList.php");

最后提供一个检查用户名密码格式的check_form.lib.php

 40){
		return '邮箱长度不符合要求';
	}elseif(!preg_match('/^[a-z0-9]+@([a-z0-9]+\.)+[a-z]{2,4}$/i',$email)){
		return '邮箱格式不符合要求';
	}
	return true;
}

//验证QQ号(5~20位)
function checkQQ($qq){
	if(!preg_match('/^[1-9][0-9]{4,20}$/',$qq)){
		return 'QQ号码格式不符合要求';
	}
	return true;
}

//验证手机号码(11位)
function checkPhone($num){
	if(!preg_match('/^1[358]\d{9}$/',$num)){
		return '手机号码不符合要求';
	}
	return true;
}

//验证URL地址
function checkURL($url){
	if(strlen($url) > 200){
		return 'URL长度不符合要求';
	}elseif(!preg_match('/^http:\/\/[a-z\d-]+(\.[\w\/]+)+$/i',$url)){
		return 'URL格式不符合要求';
	}
	return true;
}

这里的修改页面做得并不是很好,存在无法显示数据的情况,但是修改功能可以实现,不想修改了,有意向的帮我修改一下,并在下面评论区留言告诉我!

演示一下,打开首页,实现查询功能

PHP+MySql+PDO实现简单增加、删除、修改、查询_第2张图片

添加员工

PHP+MySql+PDO实现简单增加、删除、修改、查询_第3张图片

输入员工信息

PHP+MySql+PDO实现简单增加、删除、修改、查询_第4张图片

点击保存,自动回到查询页面,显示刚刚新增的数据

PHP+MySql+PDO实现简单增加、删除、修改、查询_第5张图片

其他的不演示了,有问题留言吧!

你可能感兴趣的:(PHP)