打印本文 打印本文 关闭窗口 关闭窗口
adodb+smarty+myClass 结合-数据类的智能操作
作者:武汉SEO闵涛  文章来源:敏韬网  点击数2275  更新时间:2009/4/23 10:39:09  文章录入:mintao  责任编辑:mintao
 最近接到一项目,精略计算了一下内容,设计数据库表为45个左右。这么多表,的确够头疼的。怎么做到最少操作但能达到最大的效果呢?
  本人经过分析,决定自己写数据辅助类来协助ADODB来完成工作。
  首先,确定你的目录结构,本人目录结构如下:

|-admin //后台
|-adodb //adodb文件目录
|-smarty //smarty文件目录
|-images //图片及样式文件珓
|-dataclass //数据操作类文件夹 
       |-class_test.php //测试类
|-configs //系统配置文件夹 
       |-config.inc.php //系统配置文件
|-cache //缓冲目录
|-templates //模板文件 
       |-templates_c //模板解析文件夹 
            |-test.htm //测试模板文件
include.inc.php //系统包含文件集
smarty_adodb.inc.php //smarty adodb类声明文件
test.php //测试文件

  做好以上工作,让我们开始工作吧!首先,定义你的 config.inc.php 配置文件:

<?php
$_DB
[host] = ''''localhost'''';
#数据库IP
$_DB[user] = ''''root'''';
#用户名
$_DB[pass] = ''''root'''';
#数据库密码
$_DB[name] = ''''yop'''';  
#数据库名
$_DB[type] = ''''mysql'''';
#类型
?>

smarty_adodb.inc.php

<?
$db
= &ADONewConnection($_DB[type
]);
$db ->Connect($_DB[host],$_DB[user],$_DB[pass],$_DB[name]);
#adodb链接
$tpl=new Smarty
;
$tpl->template_dir="./templates"
;
$tpl->compile_dir="./templates/templates_c"
;
$tpl->left_delimiter = ''''<{''''
;
$tpl->right_delimiter = ''''}>''''
;
?>

include.inc.php

<?php
include_once(''''./configs/config.inc.php'''');
#加载数据链接配置
include_once(''''./adodb/adodb.inc.php'''');  
#加载adodb数据类
include_once(''''./smarty/Smarty.class.php'''');
#加载smarty模板类
include_once(''''./smarty_adodb.inc.php'''');
#加载smarty及adodb类调用集合文件
include_once(''''./dataclass/class_test.php'''');
#加载HOBBY数据类
?>

接着我们开始写数据操作类,笔者的数据库结构如下:

CREATE TABLE `test` (
  `id` int(10) unsigned NOT NULL auto_increment,
  `name` varchar(20) NOT NULL default '''''''',
  `addtime` varchar(20) NOT NULL default '''''''',
  KEY `id` (`id`)
)

class_test.php

<?php
class Test
{
    function
getTest_ByID($id
) {
        global
$db
;
        if ( empty(
$id
) ) {
            return
false
;
        }
        
$sql = "SELECT * FROM `Test` where ID=''''$id''''"
;
        
$result = $db->Execute($sql
);
        
$data = $result->FetchRow
();
        return
$data
;
    }
    function
listTest($order=''''ID''''
) {
        global
$db
;
        if( empty(
$order
) ){
            
$order = ''''ID''''
;
        }
        
$sql = "SELECT * FROM `Test` order by $order desc"
;
        
$result = $db->Execute($sql
);
 &nb

[1] [2]  下一页

打印本文 打印本文 关闭窗口 关闭窗口