仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 937|回复: 19
打印 上一主题 下一主题

[学习教程] PHP教程之利用PHPLIB会见多个数据库

[复制链接]
柔情似水 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:17:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
怎么培养啊 别光说不练啊,好 ,比如新人入门自己步是配置环境,虽然现在都有很多的集成环境,但是真实的体验下配置环境还是会有很多帮助,不论是你以后工作还是在真实的linux下开发。会见|数据|数据库       PHPLIB是PHP的一些扩大库,利用它咱们可以很便利地对数据库停止各类操作,不外,假如你要利用多个数据库的话,它就显得力所能及了,本文引见了经由过程扩大PHPLIB,让你鱼和熊掌兼得,在利用PHPLIB的同时可使用多个数据库,并且从中你也能够懂得到面向对象编程和若何扩大库的常识,值得一读。     数据库办理
 你可以在一个大型的数据库中放入任何表。不外工夫长了,将会令数据库变得愈来愈大,办事器能够会跟不上IO的任务,或没有足够的内存敷衍一切的会见?要分隔现有的数据又十分难。明智的举措是入手下手时就利用分隔的数据库,而且停止无效的数据库办理。 假如你有一个卖书的网站,你能够有作者的列表,书价的列表,还有以后的库存和定单的列表。当你的营业不休增加时,定单将会不休地增加,并且处置每一个定单都需求停止良多的磁盘会见。极可能你将在某一天将一切的定单都放到一个管帐体系中。
 如今就将定单放到一个自力的数据库吧。因为库存也是经由过程定单更新的,因而库存量也放到一样的数据库中。
 作者的列表和书的列表都是一些静态的信息,要常常读取,但很少更新。实践上,更新一个作者的纪录能够只需求每5年一次,只在作者写了一本旧书(或作古)时停止。放这些数据的办事器的设置装备摆设可与放定单数据库的办事器完整分歧。
    包括PHPLIB
 PHPLIB经由过程一个称为DB_Sql的类会见SQL数据库。依据你需求利用的数据库类型,将分歧的inc文件包括在你的代码中。在这个例子中,我利用MySQL的版本。
 为了在你的代码中利用DB_Sql,要将PHPLIB文件装置在它们本人的目次中。然后,找到你的cgi-bin目次,而且在cgi-bin的目次旁创立phplib目次。下一步,拷贝一切的PHPLIB .inc文件到phplib目次。最初,修正php.inc文件,只需将“include_path=”的行改成该phplib目次就能够了。
include_path是PHP利用include()或require()时查找的目次,在我的NT workstation中,include的途径是:
include_path = ".;i:/project52/includes;i:/project52/phplib";
在Linux的体系上
include_path = ".;/home/httpd/includes;/home/httpd/phplib";
在每一个PHP页面的顶部到场
<?php
require(common.php);
?>
common.php3放在includes目次中,包括了每一个页面要用到的一切数据和函数。在这个例子中的common.php是:
<?php
require(db_mysql.inc);
require(ct_sql.inc);
require(session.inc);
require(auth.inc);
require(perm.inc);
require(user.inc);
require(page.inc);
?>
  假如你想晓得每一个inc文件的用途,可浏览http://phplib.netuse.de上的PHPLIB文档。Db_mysql.inc包括了一切DB_SQL类的界说。假如你想利用PostGreSQL取代MySQL,只需用db_pgsql.inc取代db_mysql.inc就能够了。还有10个其它的.inc文件,可使用MS SQL、Oracle、Sybase或其它的数据库。
  要注重的是,在这个例子中,require()和include()是完整一样的。不外,假如放在代码中,或在if语句中利用时,Require()和include的利用是完整分歧的,而且有分歧的运转了局。
扩大PHPLIB

  PHPLIB经由过程一个DB_Sql类发生的对象来会见数据库。Db_mysql.inc包括了为MySQL修正过的DB_Sql类。咱们将经由过程在common.php中到场代码来扩大DB_sql,这些代码将加在包括db_mysql.inc的行后。

DB_Sql包括了良多用作查询的函数,咱们要作修正的是:

<?php

/* public: 毗连办理 */
function connect($Database = "", $Host = "", $User = "", $Password = "") {
/* 处置默许毗连 */
if ("" == $Database)
$Database = $this->Database;
if ("" == $Host)
$Host = $this->Host;
if ("" == $User)
$User = $this->User;
if ("" == $Password)
$Password = $this->Password;

/* 创立毗连,选择数据库 */

if ( 0 == $this->Link_ID ) {
$this->Link_ID=mysql_pconnect($Host, $User, $Password);
if (!$this->Link_ID) {
$this->halt("pconnect($Host, $User, \$Password) failed.");
return 0;
}

if (!@mysql_select_db($Database,$this->Link_ID)) {
$this->halt("cannot use database ".$this->Database);
return 0;
}
}

return $this->Link_ID;
}

?>


[1] [2] [3] [4] 下一页  

  刚开始因为习惯于ASP格式的写法,总是在这些方面出现问题,自己还总是找不到问题所在,这就提醒了自己,在写代码的时候一定要认真,不能粗心地老是少个“;”或者字母大小写不分,要不然很可能找半天都找不到错误。
透明 该用户已被删除
沙发
发表于 2015-2-4 10:48:52 | 只看该作者
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
深爱那片海 该用户已被删除
板凳
发表于 2015-2-22 17:48:44 | 只看该作者
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
若相依 该用户已被删除
地板
发表于 2015-3-7 01:02:40 | 只看该作者
遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。
乐观 该用户已被删除
5#
发表于 2015-3-11 10:18:24 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
山那边是海 该用户已被删除
6#
发表于 2015-3-11 12:34:58 | 只看该作者
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,
飘灵儿 该用户已被删除
7#
发表于 2015-3-11 12:41:12 | 只看该作者
有位前辈曾经跟我说过,phper 至少要掌握200个函数 编起程序来才能顺畅点,那些不熟悉的函数记不住也要一拿手册就能找到。所以建议新手们没事就看看php的手册(至少array函数和string函数是要记牢的)。
蒙在股里 该用户已被删除
8#
发表于 2015-3-11 23:34:31 | 只看该作者
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
飘飘悠悠 该用户已被删除
9#
发表于 2015-3-19 16:01:16 | 只看该作者
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
莫相离 该用户已被删除
10#
发表于 2015-3-27 01:11:31 | 只看该作者
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
海妖 该用户已被删除
11#
发表于 2015-3-27 12:11:17 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
爱飞 该用户已被删除
12#
发表于 2015-3-31 06:16:04 | 只看该作者
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
金色的骷髅 该用户已被删除
13#
发表于 2015-4-1 15:08:56 | 只看该作者
至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。
灵魂腐蚀 该用户已被删除
14#
发表于 2015-4-3 03:45:29 | 只看该作者
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
再见西城 该用户已被删除
15#
发表于 2015-4-20 00:32:10 | 只看该作者
实践是检验自己会不会的真理。
冷月葬花魂 该用户已被删除
16#
发表于 2015-5-4 13:36:19 | 只看该作者
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
谁可相欹 该用户已被删除
17#
发表于 2015-5-5 16:06:14 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
简单生活 该用户已被删除
18#
发表于 2015-5-7 20:43:17 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
分手快乐 该用户已被删除
19#
发表于 2015-6-5 00:33:23 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
不帅 该用户已被删除
20#
发表于 2015-6-30 19:13:27 | 只看该作者
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 03:33

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表