喜悦国际村 
» 游客:  注册 | 登录 | 搜索 | 统计 | 帮助

RSS 订阅当前论坛  

喜悦证交所已经关闭

上一主题 下一主题
     
标题: 老问题:类  
 
zww23 (zww23)
中级会员
Rank: 3Rank: 3
一般会员



UID 53813
精华 0
积分 427
帖子 343
金钱 427 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2004-11-24
状态 离线
[广告]: q m
老问题:类

本人对类的理解比较零散,想在这里找人帮忙整理思路。

在网上找到的类的教程都是一些基本的东西,但当用到比较大型的网站的时候就现得“不够用”,而一些高级一点的教程,就只是显示类,就不没有具体怎样运用出这个类。所以希望高手们能否就我下面给的例子,然后写出类,再具体怎样运用它。

例:数据库控制类(现在我也不知道哪个好用,请建议一个。)
       具体用到数据库连接、查询、添加、修改、删除、等。
2006-7-28 10:53 AM#1
查看资料  Blog  发短消息  顶部
 
kuco
高级会员
Rank: 4
一半会员


UID 66126
精华 0
积分 962
帖子 964
金钱 909 喜悦币
威望 0
人脉 53
阅读权限 50
注册 2005-8-23
来自 上海
状态 离线
[推荐阅读] 显示多个汉字的问题
老问题:累

数据库控制类 => 下载一个 phplib =>打开 php 目录 =>找到 db_mysql.inc (它就是你要找的)




阿里妈妈再掀疯狂采购风,急召天下站长,新加入站点3天内一定采购!
2006-7-28 11:03 AM#2
查看资料  Blog  发短消息  顶部
 
zww23 (zww23)
中级会员
Rank: 3Rank: 3
一般会员



UID 53813
精华 0
积分 427
帖子 343
金钱 427 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2004-11-24
状态 离线
[推荐阅读] 为何传不了值?
thanks!!!
2006-7-28 11:15 AM#3
查看资料  Blog  发短消息  顶部
 
zww23 (zww23)
中级会员
Rank: 3Rank: 3
一般会员



UID 53813
精华 0
积分 427
帖子 343
金钱 427 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2004-11-24
状态 离线
[推荐阅读] [求助]javascript td和table之间的关系 高手帮忙!
我想问我一个文件从连接数据库->查询->到运行完的步骤是不是下面那样:

  include "db_mysql.inc ";

$db = new DB_Sql;

$db->connect("database","localhost","user","password");

$db->query("select * from tablename");
在这里如何循环出查询的记录?

$db->free();

是这样吗?
2006-7-28 11:25 AM#4
查看资料  Blog  发短消息  顶部
 
leo_han (臭p孩儿)
金牌会员
Rank: 6Rank: 6
傻眼博士


UID 63903
精华 0
积分 1074
帖子 1177
金钱 1074 喜悦币
威望 0
人脉 0
阅读权限 70
注册 2005-4-1
来自 辽宁--大连
状态 离线
[推荐阅读] [诚聘]PHP工程师,JS工程师
就讲讲思路吧,实际例子由于也不一定适合你,你可以自己去找或者自己写一个。

楼主最好不要把类跟你所要完成的需求(逻辑)弄乱了,你面对一个项目的时候,首先要先搞清业务逻辑,这个项目到底要先干啥,再干啥,然后干啥。这个理清了之后,那么接下在就用代码实现,而这个时候就会涉及到类了。之所以应用类,很大的原因就是把一类功能的代码进行封装,这样做不仅页面上的代码看着干净整洁,都是类似于:

<?php
DB $db 
= new DB();
$db->query(SQL语句);
$arr_list $db->fetchArray();
      ........
      ........
?>
同样也有程序便于维护的好处。

那么到底如何去用一个类呢??
当你理清了如下的操作该是对数据库的操作了,那么你手头还有了一个数据库的类(这个村里有都是牛人们写好的DB类,你可以下载一个比较好的,注释写的清晰的,最起码你能看懂每个方法都是干什么的),你就可以应用了。。
以往没有涉及的类代码的时候我们就会一步一步的写,比如:

<?php
$lnk 
mysql_connect('localhost''mysql_user''mysql_password')
       or die (
'Not connected : ' mysql_error());

// make foo the current db
mysql_select_db('foo'$lnk) or die ('Can'use foo : ' . mysql_error());
$rs = mysql_query("select * from tb_name");
$array_list = mysql_fetch_array($rs);
?>
这么长的代码来完成,可是当你用类的时候,由于类就会把一些操作都封装好了,即便你在页面上体现的代码就是:

<?php
DB $db 
= new DB();
?>
这么简单的一句,那么它类的本身或许就会在构造函数里早已加入了连接数据库,如果连接出错,就会提示出错信息等逻辑了,这样也正体现出了我上面所说的用类的好处了。

那么用类无非就是:
1、初始化实例 也就是DB $db = new DB();
2、就可以用实例调用类中的相应方法了,这个要根据不用的类的方法的定义的参数进行相应的写法。


以下就是小弟的一些拙见,希望对你能有帮助。




士可杀,不可辱,皮鞋上不能有土
头可断,血可流,皮鞋不能不打油
有事您说话~~
blog:我是无敌凹凸曼
2006-7-28 11:30 AM#5
查看资料  访问主页  Blog  发短消息  QQ  顶部
 
kuco
高级会员
Rank: 4
一半会员


UID 66126
精华 0
积分 962
帖子 964
金钱 909 喜悦币
威望 0
人脉 53
阅读权限 50
注册 2005-8-23
来自 上海
状态 离线
[推荐阅读] 共享:二级下拉菜单下载


<?php
    
//一个简单的应用实例

    
require "db_mysql.inc";                  //包含db_mysql.inc           
    
$db=new DB_Sql;                          //创建一个DB_Sql类的变量$db
    
$db->connect();                          //调用DB_Sql类的connect方法,连接数据库
    
$db->query("SELECT id, name FROM user"); //调用DB_Sql类的query方法,执行查询
    
if ($db->nf()){                          //DB_Sql类的nf()方法返回查询后得到的记录条数
          
while ($db->next_record()){        //next_record()方法把DB_Sql类的结果指针下移一条,如果到了结尾,就返回假值
            
echo "id is";   $db->f('id');    //f()返回当前行某一个字段的值,参数是字段名
            
echo "<br>";
            echo 
"name is "$db->p('name'); //p()相当于echo $db->f()
            
echo "<br>";
       } 
    
$db->free();                             //释放查询占用的内存
    
}
?>




阿里妈妈再掀疯狂采购风,急召天下站长,新加入站点3天内一定采购!
2006-7-28 11:35 AM#6
查看资料  Blog  发短消息  顶部
 
pppp (php编程)
高级会员
Rank: 4
老会员


UID 19770
精华 0
积分 552
帖子 566
金钱 552 喜悦币
威望 0
人脉 0
阅读权限 50
注册 2003-4-21
状态 离线
[推荐阅读] 求一个php+ajax的聊天室
我想问一下关于类和函数有什么区别!比较速度?用途哪一个好?
2006-7-28 11:40 AM#7
查看资料  发短消息  QQ  ICQ 状态  顶部
 
zww23 (zww23)
中级会员
Rank: 3Rank: 3
一般会员



UID 53813
精华 0
积分 427
帖子 343
金钱 427 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2004-11-24
状态 离线
[推荐阅读] 分享几个 经典的搞笑片....................
非常感谢5楼!!!让我解了高手对类的理解。

但有个问题,在代码里:
<?php
DB $db = new DB();
?>
前面的DB是什么意思?

一般不是直接是:
<?php
$db = new DB();
?>
吗?

还有就是,我们在运行完一个PHP文件后,正确的操作是不是要关闭数据库close();?,还是如何处理?
2006-7-28 11:46 AM#8
查看资料  Blog  发短消息  顶部
 
LuckLrj (中国php中的爱因斯坦)
版主
Rank: 7Rank: 7Rank: 7
老会员


UID 64836
精华 0
积分 2599
帖子 3138
金钱 2599 喜悦币
威望 0
人脉 0
阅读权限 100
注册 2005-6-19
状态 离线
[推荐阅读] navicat有用的吗?
<?php
DB $db = new DB();
?>

这个是指明了 $db 是类DB的一个示例。可以不加。
这样的写法是java的格式。




学习,工作累了,请访问我的小站,娱乐一下。http://www.52sunny.net
2006-7-28 02:01 PM#9
查看资料  Blog  发短消息  顶部
 
zww23 (zww23)
中级会员
Rank: 3Rank: 3
一般会员



UID 53813
精华 0
积分 427
帖子 343
金钱 427 喜悦币
威望 0
人脉 0
阅读权限 30
注册 2004-11-24
状态 离线
[推荐阅读] [上海招聘] [PHP程序员] [地处徐家汇,交通方便]
thanks!!!
2006-7-28 02:09 PM#10
查看资料  Blog  发短消息  顶部
     


  可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题 | 开通个人空间  


 




Powered by Discuz! 6.1.0  © 2001-2010 Comsenz Inc.
Processed in 0.026459 second(s), 6 queries

(冀ICP备05009913号) 管理员:sadly 邮箱/MSN: sadly@phpx.com QQ:824008(长隐) 清除 Cookies - - Archiver - WAP