PHP直接修改表内容DataGrid功能实现代码


Posted in PHP onSeptember 24, 2015

由于需要连接Oracle所以从二次开发和页面样式来说个人觉得phpMyDataGrid还是比较好上手。
1. 创建测试数据库和表

create database `guru`; 
 
USE `guru`; 
 
CREATE TABLE `employees` ( 
   `id` int(6) NOT NULL auto_increment, 
   `name` char(20) default NULL, 
   `lastname` char(20) default NULL, 
   `salary` float default NULL, 
   `age` int(2) default NULL, 
   `afiliation` date default NULL, 
   `status` int(1) default NULL, 
   `active` tinyint(1) default NULL, 
   `workeddays` int(2) default NULL, 
   `photo` char(30) default NULL, 
   PRIMARY KEY (`id`) 
) 
 
insert into `employees` 
  (`id`,`name`,`lastname`,`salary`,`age`,`afiliation`,`status`,`active`,`workeddays`,`photo`)  
  values (1, 'Ana', 'Trujillo',2000,45, '2005-05-13',1,1,10, '1.jpg'); 
insert into `employees`  
  (`id`,`name`,`lastname`,`salary`,`age`,`afiliation`,`status`,`active`,`workeddays`,`photo`) 
  values (2, 'Jennifer', 'Aniston',3500,23, '2004-10-22',1,0,0, '2.jpg'); 
insert into `employees`  
  (`id`,`name`,`lastname`,`salary`,`age`,`afiliation`,`status`,`active`,`workeddays`,`photo`) 
  values (3, 'Michael', 'Norman',1200,19, '2007-01-10',1,1,5, '3.jpg'); 
insert into `employees`  
  (`id`,`name`,`lastname`,`salary`,`age`,`afiliation`,`status`,`active`,`workeddays`,`photo`) 
  values (4, 'Vanessa', 'Black',6500,31, '2000-11-05',1,1,30, '4.jpg'); 
insert into `employees`  
  (`id`,`name`,`lastname`,`salary`,`age`,`afiliation`,`status`,`active`,`workeddays`,`photo`) 
  values (5, 'Michael', 'Strauss',3200,45, '2006-10-21',2,0,22, '5.jpg'); 
insert into `employees`  
  (`id`,`name`,`lastname`,`salary`,`age`,`afiliation`,`status`,`active`,`workeddays`,`photo`) 
  values (6, 'William', 'Brown',2300,21, '2001-03-10',3,1,10, '6.jpg'); 
insert into `employees`  
  (`id`,`name`,`lastname`,`salary`,`age`,`afiliation`,`status`,`active`,`workeddays`,`photo`) 
  values (7, 'Lucca', 'Normany',2800,36, '2006-10-02',3,1,20, '7.jpg');

2. PHP程序介绍

phpMyDataGrid主要是通过phpmydatagrid.class.php,dgscripts.js来实现的,总共加起来不到100kB,又是一个小巧的软件。对于这两个文件就不多讲了,感兴趣的同学可以“打包带走”回去慢慢品。主要介绍该软件的使用方法,即实例 datagrid_for_mysql.php。先看一下页面示意图:

PHP直接修改表内容DataGrid功能实现代码

程序讲解:

<?php  
include ("phpmydatagrid.class.php"); 
$objGrid = new datagrid; 
$objGrid->closeTags(true);  
$objGrid->friendlyHTML();  
$objGrid->methodForm("get");  
//连接数据库 
$objGrid->conectadb("127.0.0.1", "root", "root", "guru");//加密字符串 
$objGrid->salt("Myc0defor5tr0ng3r-Pro3EctiOn"); 
$objGrid->language("en"); 
//最后一列显示的功能键,从左向右功能为“新增键”、“编辑键”、“删除键”、“浏览键”。 
$objGrid->buttons(true,true,true,true); 
//修改数值时产生的Form名称 
$objGrid->form('employee', true); 
//可检索列名 
$objGrid->searchby("name,lastname"); 
//需要读取的表 
$objGrid->tabla("employees"); 
//索引值用于修改数据 
$objGrid->keyfield("id"); 
//分页显示行数 
$objGrid->datarows(20); 
//默认排序方式 
$objGrid->orderby("name", "ASC"); 
//显示列设置,相关设置可参考phpmydatagrid.class.php 
$objGrid->FormatColumn("id", "ID Employee", 5, 5, 1, "50", "center", "integer"); 
$objGrid->FormatColumn("name", "Name", 30, 30, 0, "150", "left"); 
$objGrid->FormatColumn("lastname", "Last name", 30, 30, 0, "150", "left"); 
$objGrid->FormatColumn("age", "Age", 5, 5, 0, "50", "right");//自定义日期格式 
$objGrid->FormatColumn("afiliation", "Afiliation Date", 10, 10, 0, "100", "center", "date:dmy:/");//编辑时可以自定义为<Select>模式 
$objGrid->FormatColumn("status", "Status", 5, 5, 0, "60", "left", "select:1_Single:2_Married:3_Divorced"); 
//编辑时可以自定义为<CheckBox>模式 
$objGrid->FormatColumn("active", "Active", 2, 2, 0,"50", "center", "check:No:Yes");//自定义货币显示形式 
$objGrid->FormatColumn("salary", "Salary", 10, 10, 0, "90", "right", "money:€");//将数据以柱状图显示 
$objGrid->FormatColumn("workeddays", "Work days", 5, 2, 0, "50", "right", "chart:percent:val:31"); 
$objGrid->checkable(); 
$objGrid->setHeader(); 
$objGrid->ajax('silent'); 
echo '<html> 
   <head><title>PHPDataGrid</title></head> 
   <body><div align="center"><br />'; 
//生成DataGrid 
$objGrid->grid(); 
echo '</div></body></html>';//关闭数据库连接 
$objGrid->desconectar(); 
?>

3. 基于Oracle简介

对于Oracle的读取主要是把phpmydatagrid.class.php中与MySQL连接的函数修改为Oracle,本篇是通过sqlrelay进行的Oracle连接,当然也可以使用PHP自带的OCI8模块(效率有些低),修改后另存为phporadatagrid.class.php即可在其他程序(datagrid_for_oracle.php)中调用。

以上就是教大家PHP如何直接修改表内容DataGrid功能的全过程,还有对数据库的了解,希望本文对大家的学习有所帮助。

PHP 相关文章推荐
第九节 绑定 [9]
Oct 09 PHP
谈谈PHP的输入输出流
Feb 14 PHP
PHP Squid中可缓存的动态网页设计
Sep 17 PHP
关于PHP5 Session生命周期介绍
Mar 02 PHP
PHP 读取Postgresql中的数组
Apr 14 PHP
腾讯QQ微博API接口获取微博内容
Oct 30 PHP
php 创建以UNIX时间戳命名的文件夹(示例代码)
Mar 08 PHP
php中count获取多维数组长度的方法
Nov 03 PHP
php实现插入数组但不影响原有顺序的方法
Mar 27 PHP
yii2 上传图片的示例代码
Nov 02 PHP
PHP安装BCMath扩展的方法
Feb 13 PHP
php并发加锁问题分析与设计代码实例讲解
Feb 26 PHP
PHP生成条形码大揭秘
Sep 24 #PHP
php商品对比功能代码分享
Sep 24 #PHP
php实现简易聊天室应用代码
Sep 23 #PHP
利用PHP如何实现Socket服务器
Sep 23 #PHP
10个超级有用的PHP代码片段果断收藏
Sep 23 #PHP
Discuz!X中SESSION机制实例详解
Sep 23 #PHP
php中session_id()函数详细介绍,会话id生成过程及session id长度
Sep 23 #PHP
You might like
声音就能俘获人心,蕾姆,是哪个漂亮小姐姐配音呢?
2020/03/03 日漫
php中通过虚代理实现延迟加载的实现代码
2011/06/10 PHP
php中array_slice和array_splice函数解析
2016/10/18 PHP
从阿里妈妈发现的几个不错的表单验证函数
2007/09/21 Javascript
createElement动态创建HTML对象脚本代码
2008/11/24 Javascript
Jquery AJAX 框架的使用方法
2009/11/03 Javascript
JavaScript 语言的递归编程
2010/05/18 Javascript
JQuery从头学起第一讲
2010/07/04 Javascript
超级有用的13个基于jQuery的内容滚动插件和教程
2011/07/31 Javascript
网页前端优化之滚动延时加载图片示例
2013/07/13 Javascript
原生JS可拖动弹窗效果实例代码
2013/11/09 Javascript
Jquery解析json数据详解
2013/12/26 Javascript
js原型继承的两种方法对比介绍
2014/03/30 Javascript
当某个文本框成为焦点时即清除文本框内容
2014/04/28 Javascript
JavaScript Ajax编程 应用篇
2016/07/02 Javascript
浅述Javascript的外部对象
2016/12/07 Javascript
js实现会跳动的日历效果(完整实例)
2017/10/18 Javascript
Vue指令之 v-cloak、v-text、v-html实例详解
2019/08/08 Javascript
编写Python脚本来实现最简单的FTP下载的教程
2015/05/04 Python
Python Paramiko模块的安装与使用详解
2016/11/18 Python
python文本数据相似度的度量
2018/03/12 Python
Python函数中的可变长参数详解
2019/09/12 Python
Python django框架输入汉字,数字,字符生成二维码实现详解
2019/09/24 Python
Python 随机生成测试数据的模块:faker基本使用方法详解
2020/04/09 Python
Python实现曲线拟合的最小二乘法
2021/02/19 Python
玩转CSS3色彩
2010/01/16 HTML / CSS
运动鞋中的劳斯莱斯:索康尼(SAUCONY)
2017/08/09 全球购物
小学英语教师先进事迹
2014/05/28 职场文书
群众路线领导干部个人对照检查材料(集锦)
2014/09/23 职场文书
作息时间调整通知
2015/04/22 职场文书
行政处罚告知书
2015/07/01 职场文书
爱岗敬业先进典型事迹材料(2016推荐版)
2016/02/26 职场文书
闭幕词的写作格式与范文!
2019/06/24 职场文书
如何写一份具有法律效力的借款协议书?
2019/07/02 职场文书
Java 实现限流器处理Rest接口请求详解流程
2021/11/02 Java/Android
vue实现登陆页面开发实践
2022/05/30 Vue.js