#1 tphpn
代码如下:
$dsn_sp = spClass('db_mssql',array(array('driver' => 'mssql','port' => 1433,'host' => 'localhost','login' => 'sa','password' => '123456','database' => 'SPDB',)), SP_PATH.'/Drivers/mssql.php', TRUE);
$Portal_SP = spClass("Portal");
$Portal_SP->_db = $dsn_sp;
$this->results = $Portal_SP->findSql("select top 10 * from SP_Table");
这样执行,提示
Fatal error: Call to undefined function mysql_connect() in
D:\ApacheR\DB_Operation\SpeedPHP\Drivers\mysql.php on line
92是设置错了还是没起作用,麻烦解答;
2013-01-08 17:20:29
#2 jake
Call to undefined function mysql_connect()
你的php环境没开mysql扩展
2013-01-08 17:39:00
#3 tphpn
如果我是用MSSQL,不用mysql那是不是也需要开mysql扩展呢?
2013-02-01 09:20:07
#6 tphpn
是,我知道提示和文件名都是mysql,但是同时,上面只有对mssql的配置,这个需要怎么处理呢?
2013-02-05 10:38:11
#8 jake
tphpn 发表于 2013-2-5 10:38
是,我知道提示和文件名都是mysql,但是同时,上面只有对mssql的配置,这个需要怎么处理呢? ...
应该是你的配置一开始是mysql的(在index.php里面),所以先是找不到mysql
2013-02-05 11:32:13
#9 tphpn
终于被我找到原因了,不过还是要多谢jake的热心解答;
把原因与各位分享一下,让后来的朋友可以不在被这个问题困扰:
在最开始的时候,在index.php中,我并没有初始化db的配置,所以在使用$Portal_SP = spClass("Portal"); 时,就找去默认的db,而默认的db刚好是mysql 配置,所以就出了错;
解决办法:在index中加入对可连接db的配置,取代默认的mysql db,然后再使用以下代码就不会有问题了;
$dsn_sp = spClass('db_mssql',array(array('driver' => 'mssql','port' => 1433,'host' => 'localhost','login' => 'sa','password' => '123456','database' => 'SPDB',)), SP_PATH.'/Drivers/mssql.php', TRUE);
$Portal_SP = spClass("Portal");
$Portal_SP->_db = $dsn_sp;
$this->results = $Portal_SP->findSql("select top 10 * from SP_Table");
2013-02-05 11:56:10