|
根据 Mysql 里的字段 自动生成 类文件:
但需要导入:
require_once ./db/ez_sql_core.php; require_once ./db/ez_sql_mysql.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$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 = '//////////////////////////////////// '; $html = $html.'//使用方法 '; $html = $html.'// 导入 '; $html = $html.'// ez_sql:http://jvmultimedia.com/docs/ezsql/ez_sql_help.htm'; $html = $html.'// require_once './db/ez_sql_core.php; '; $html = $html.'// require_once './db/ez_sql_mysql.php; '; $html = $html.'// $db = new ezSQL_mysql($cfg_db_user,$cfg_db_pass,$cfg_db_name,$cfg_db_host); '; $html = $html.'// $db->query('set names utf8'); '; $html = $html.'// 调用 '; $html = $html.'// $forum = new Forum($db); '; $html = $html.'// $forum->save($Posts); '; $html = $html.'////////////////////////////////////
'; $html = $html.'// 作者: '; $html = $html.'// 备注: '; $html = $html.'// 创建时间:'.date('Y-m-d H:i:s').' '; $html = $html.' class '.$tablename.'{ '; $html = $html.' '; $html = $html.' private $db'; $html = $html.' '; $html = $html.' '; $html = $html.' //实例化 '; $html = $html.' public function '.$tablename.'($db){ '; $html = $html.' $this->db = $db; '; $html = $html.' } '; $html = $html.' '; $html = $html.' //保存记录 '; $html = $html.' public function save($arry){ '; for($i=0;$i$key = $key.$field[$i].','; $val = $val.''{$arry['.$field[$i].']}','; } $sql = ""insert into ".$tablename." (".rtrim($key,",").")values(".rtrim($val,").")""; $html = $html.' $sql='.$sql.'; '; $html = $html.' return $this->db->query($sql); '; $html = $html.' } '; $html = $html.' '; $html = $html.' //根据主键更新记录 '; $html = $html.' public function update($arry){ '; for($i=0;$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.'; '; $html = $html.' return $this->db->query($sql); '; $html = $html.' } '; //PostID='{$Posts['PostID']}'"; $html = $html.' '; $html = $html.' //根据主键删除记录 '; $html = $html.' public function delete($'.$this->primary_key.'){ '; $sql = ""delete from ".$tablename." where ".$this->primary_key."=".$".$this->primary_key; $html = $html.' $sql='.$sql.'; '; $html = $html.' return $this->db->query($sql); '; $html = $html.' } '; $html = $html.' '; $html = $html.' //根据主键查询一条记录 '; $html = $html.' public function getQueryById($'.$this->primary_key.'){ '; $sql = ""select * from ".$tablename." where ".$this->primary_key."=".$".$this->primary_key; $html = $html.' $sql='.$sql.'; '; $html = $html.' return $this->db->get_row($sql); '; $html = $html.' } '; $html = $html.' '; $html = $html.' //查询全部记录 '; $html = $html.' public function getQuery(){ '; $sql = ""select * from ".$tablename."""; $html = $html.' $sql='.$sql.'; '; $html = $html.' return $this->db->get_results($sql); '; $html = $html.' } '; $html = $html.' '; $html = $html.' '; $html = $html.'}'; echo $html; } } ?> PHP For MySQL Helper v1.0 ini_set('default_charset','utf-8'); echo ''; echo '请选择数据库'; //----------------------------------- $DB = new db(); $dblist = $DB->db_list(); for ($row=0;$rowecho ' '; } //----------------------------------- echo ''; echo ''; echo '请选择表'; //----------------------------------- if(isset($_GET['databasename'])){ $databasename = $_GET['databasename']; $DB = new db(); $tablelist = $DB->table_list($databasename); for ($i=0;$iecho ' '; } } //----------------------------------- echo ''; echo ''; echo '自动生成数据类'; //----------------------------------- if(isset($_GET['databasename'])&& isset($_GET['tablename'])){ $databasename = $_GET['databasename']; $tablename = $_GET['tablename']; $DB = new db(); $DB->showclass($databasename,$tablename); } //----------------------------------- echo ''; ?>
代码打包下载 (编辑:安卓应用网)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|