PHP FOR MYSQL 代码生成助手(根据Mysql里的字段自动生成类文件的)
PHP FOR MYSQL 代码生成助手(根据Mysql里的字段自动生成类文件的)
发布时间:2016-12-29 来源:查字典编辑
摘要:根据Mysql里的字段自动生成类文件:但需要导入:require_once./db/ez_sql_core.php;require_once...

根据 Mysql 里的字段 自动生成 类文件:

但需要导入:

require_once ./db/ez_sql_core.php;

require_once ./db/ez_sql_mysql.php;

帮助文档:http://jvmultimedia.com/docs/ezsql/ez_sql_help.htm

上图 :

PHP FOR MYSQL 代码生成助手(根据Mysql里的字段自动生成类文件的)1

核心代码:

复制代码 代码如下:

<?php

class db{

/**********************************************************************

* Author: fangjun (fangjunai@163.com)

* Name..: PHP_For_MySQL_Helper v1.0

* Desc..: 自动生成数据库操作类

* Date..: 2011-7-22

/**********************************************************************/

private $db_server = 'localhost';

private $db_username = 'root';

private $db_password = '';

private $primary_key = null;

//初始化

public function __construct(){

$this->db_conn = mysql_connect($this->db_server,$this->db_username,$this->db_password) or die('Error:'.mysql_error());

}

//返回所以的数据库名称

public function db_list(){

$databasename = array();

$i=0;

$list = mysql_list_dbs($this->db_conn);

while ($row = mysql_fetch_object($list)) {

$databasename[$i] = $row->Database;

$i++;

}

mysql_close();

return $databasename;

}

//返回所以的数据库名称

public function table_list($databasename){

$tablename = array();

$i=0;

$result = @mysql_list_tables($databasename);

while($row = mysql_fetch_array($result,MYSQL_NUM)){

$tablename[$i] = $row[0];

$i++;

}

mysql_free_result($result);

mysql_close();

return $tablename;

}

//返回表里的字段

public function field_list($databasename,$tablename){

$fieldname = array();

$v = 0;

mysql_select_db($databasename,$this->db_conn);

$rel = mysql_query("select * from ".$tablename);

for($i=0;$i<mysql_num_fields($rel);$i++){

$meta = mysql_fetch_field($rel);

if($meta){

if($meta->primary_key==1){

$this->primary_key = $meta->name;

}else{

$fieldname[$v] = $meta->name;

$v++;

}

}

}

mysql_close();

return $fieldname;

}

public function showclass($databasename,$tablename){

$field = $this->field_list($databasename,$tablename);

$this->primary_key;

$key = null;

$val = null;

$sql = null;

$tmp = null;

$html = '////////////////////////////////////<br/>';

$html = $html.'//使用方法<br/>';

$html = $html.'// 导入<br/>';

$html = $html.'// ez_sql:http://jvmultimedia.com/docs/ezsql/ez_sql_help.htm';

$html = $html.'// require_once './db/ez_sql_core.php;<br/>';

$html = $html.'// require_once './db/ez_sql_mysql.php;<br/>';

$html = $html.'// $db = new ezSQL_mysql($cfg_db_user,$cfg_db_pass,$cfg_db_name,$cfg_db_host);<br/>';

$html = $html.'// $db->query('set names utf8');<br/>';

$html = $html.'// 调用<br/>';

$html = $html.'// $forum = new Forum($db);<br/>';

$html = $html.'// $forum->save($Posts);<br/>';

$html = $html.'////////////////////////////////////<br/><br/><br/>';

$html = $html.'// 作者:<br/>';

$html = $html.'// 备注:<br/>';

$html = $html.'// 创建时间:'.date('Y-m-d H:i:s').'<br/>';

$html = $html.'<PRE> class '.$tablename.'{<br/>';

$html = $html.'<br/>';

$html = $html.' private $db';

$html = $html.'<br/>';

$html = $html.'<br/>';

$html = $html.' //实例化 <br/>';

$html = $html.' public function '.$tablename.'($db){<br/>';

$html = $html.' $this->db = $db;<br/>';

$html = $html.' }<br/>';

$html = $html.'<br/>';

$html = $html.' //保存记录<br/>';

$html = $html.' public function save($arry){<br/>';

for($i=0;$i<count($field);$i++){

$key = $key.$field[$i].',';

$val = $val.''{$arry['.$field[$i].']}',';

}

$sql = ""insert into ".$tablename." (".rtrim($key,",").")values(".rtrim($val,",").")"";

$html = $html.' $sql='.$sql.';<br/>';

$html = $html.' return $this->db->query($sql);<br/>';

$html = $html.' }<br/>';

$html = $html.'<br/>';

$html = $html.' //根据主键更新记录 <br/>';

$html = $html.' public function update($arry){<br/>';

for($i=0;$i<count($field);$i++){

$tmp = $tmp.$field[$i].'='{$arry['.$field[$i].']}',';

}

$sql = ""update ".$tablename." set ".rtrim($tmp,",")." where ".$this->primary_key.'=".$arry['.$this->primary_key.']';

$html = $html.' $sql='.$sql.';<br/>';

$html = $html.' return $this->db->query($sql);<br/>';

$html = $html.' }<br/>';

//PostID='{$Posts['PostID']}'";

$html = $html.'<br/>';

$html = $html.' //根据主键删除记录 <br/>';

$html = $html.' public function delete($'.$this->primary_key.'){<br/>';

$sql = ""delete from ".$tablename." where ".$this->primary_key."=".$".$this->primary_key;

$html = $html.' $sql='.$sql.';<br/>';

$html = $html.' return $this->db->query($sql);<br/>';

$html = $html.' }<br/>';

$html = $html.'<br/>';

$html = $html.' //根据主键查询一条记录 <br/>';

$html = $html.' public function getQueryById($'.$this->primary_key.'){<br/>';

$sql = ""select * from ".$tablename." where ".$this->primary_key."=".$".$this->primary_key;

$html = $html.' $sql='.$sql.';<br/>';

$html = $html.' return $this->db->get_row($sql);<br/>';

$html = $html.' }<br/>';

$html = $html.'<br/>';

$html = $html.' //查询全部记录 <br/>';

$html = $html.' public function getQuery(){<br/>';

$sql = ""select * from ".$tablename.""";

$html = $html.' $sql='.$sql.';<br/>';

$html = $html.' return $this->db->get_results($sql);<br/>';

$html = $html.' }<br/>';

$html = $html.'<br/>';

$html = $html.'<br/>';

$html = $html.'}</PRE>';

echo $html;

}

}

?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title> PHP For MySQL Helper v1.0 </title>

<style>

body{ font-size:14px;}

h3{ padding:0px; margin:0px; background-color:#333; color:#FFF;font-size:14px; }

.dblist,.tablelist,.show{width:100%;padding:10px 0;}

a:link {}

a:hover {color:#F00}

</style>

</head>

<body>

<?php

ini_set('default_charset', 'utf-8');

echo '<div>';

echo '<h3>请选择数据库</h3>';

//-----------------------------------

$DB = new db();

$dblist = $DB->db_list();

for ($row=0;$row<count($dblist);$row++){

echo '<a href="?databasename='.$dblist[$row].'">'.$dblist[$row].'</a><br/>';

}

//-----------------------------------

echo '</div>';

echo '<div>';

echo '<h3>请选择表</h3>';

//-----------------------------------

if(isset($_GET['databasename'])){

$databasename = $_GET['databasename'];

$DB = new db();

$tablelist = $DB->table_list($databasename);

for ($i=0;$i<count($tablelist);$i++){

echo '<a href="db.php?databasename='.$databasename.'&tablename='.$tablelist[$i].'">'.$tablelist[$i].'</a><br/>';

}

}

//-----------------------------------

echo '</div>';

echo '<div>';

echo '<h3>自动生成数据类</h3>';

//-----------------------------------

if(isset($_GET['databasename'])&& isset($_GET['tablename'])){

$databasename = $_GET['databasename'];

$tablename = $_GET['tablename'];

$DB = new db();

$DB->showclass($databasename,$tablename);

}

//-----------------------------------

echo '</div>';

?>

</body>

</html>

代码打包下载

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新php教程学习
热门php教程学习
编程开发子分类