function __construct($host,$user,$pass,$db) {
$this->link_id=mysql_pconnect($host,$user,$pass); //连接数据库服务器
mysql_select_db($db,$this->link_id); //选择所需数据库
//mysql_query("set names utf8;");
}
只要利用“mysql_pconnect”函数就可以连接到指定的MySQL数据库,请问这是为什么?
问题一:中间利用了ADO、OLE DB,还是ODBC?
问题二:怎样调用MySQL的驱动程序,进而操作数据库,实现交互的呢?
17 个解决方案
#1
你想得太复杂了,就是API。
#2
楼主去看看php的ext文件夹吧,有php_mysql.dll文件,你就能连接MySQL.
#3
这应该是自已写的一个数据库操作类。可以直接操作数据库的。
其它没什么。不用什么中间件。
其它没什么。不用什么中间件。
#4
为什么一定要用ADO、OLE DB,ODBC之类的才能连接数据库呢?
#5
不然怎么连接到数据库,不是要通过MS的操做系统的“ADO、OLE DB,ODBC”,然后调用MYSQL的驱动程序,实现应用程序和MSSQL之间的数据的交互的吗?
难道,应用程序直接调用MSSQL的驱动程序,而不经过操作系统?
不解,不解啊。。。
#6
看来楼主钻牛角尖了!
#7
#8
大侠嘞???
#9
蛋疼帖~鉴定完毕!
#10
windows和linux是截然不同的两个操作系统,不要以windows的思维去研究linux。
之所以说php快捷方便,其优点在于此,方便!只需要mysql_connect,mysqli_connect,mysql_pconnect之类的函数就能连接mysql数据库。
我不知道楼主有没有在linux编译过php。安装php的步骤以及方式,windows和linux是不一样的。我先给你看看编译命令吧。
'./configure' '--prefix=/usr/local/php' '--with-mysql=/usr/local/mysql' '--with-mysqli=/usr/local/mysql/bin/mysql_config'
我只给你贴了一小部分命令,当然,你要安装更多插件,就得输入更多的命令。
你想用LAMP环境来开发php网站的话,先安装mysql数据库,最后一个安装php。
'--with-mysql=/usr/local/mysql' '--with-mysqli=/usr/local/mysql/bin/mysql_config' 这句话包含的意思你该明白吧,就是说编译php的时候已经把mysql的安装目录以及设置参数都载入了,也就是说安装php之后php和mysql已经做好连接准备了。就是楼主说过的所谓的ADO,OLE DB,ODBC之类的。
哈哈!不知道我说得对不对,欢迎楼主以及其他各路高手反驳~~本人洗耳恭听!
#11
哥们适合搞程序!~~~
敢于钻研!~~~
敢于钻研!~~~
#12
只要解决问题,不管什么手段
#13
端口,协议,socket。
#14
在另一个帖子里回过了,不重复了,请楼主参考:
http://topic.csdn.net/u/20101205/19/1cf958b6-950b-4a3a-94cb-a952ea2d93b8.html
http://topic.csdn.net/u/20101205/19/1cf958b6-950b-4a3a-94cb-a952ea2d93b8.html
#15
管他什么什么的,能用就行,发下我的连接代码
<?
$database_address = "数据库IP";
$database_username = "数据库名称";
$database_password = "数据库密码";
$database_tablename = "数据库";
$con = mysql_connect($database_address, $database_username, $database_password);
mysql_select_db($database_tablename, $con);
?>
<?
$database_address = "数据库IP";
$database_username = "数据库名称";
$database_password = "数据库密码";
$database_tablename = "数据库";
$con = mysql_connect($database_address, $database_username, $database_password);
mysql_select_db($database_tablename, $con);
?>
#16
apache监听的是80端口(默认),mysql默认监听的是3306端口。其实php跟mysql通讯,就是走的socket通讯,与3306端口建立连接,并来回收发数据。php的mysql扩展其实就是规定了一些socket通讯时的数据包收发的规则。
详情可以去研究php源码,ext\mysql\php_mysql.c690行php_mysql_do_connect函数。
详情可以去研究php源码,ext\mysql\php_mysql.c690行php_mysql_do_connect函数。
#17
认真你就输了,研究这个没有任何实际意义,假如你不是想参与php的编写
#1
你想得太复杂了,就是API。
#2
楼主去看看php的ext文件夹吧,有php_mysql.dll文件,你就能连接MySQL.
#3
这应该是自已写的一个数据库操作类。可以直接操作数据库的。
其它没什么。不用什么中间件。
其它没什么。不用什么中间件。
#4
为什么一定要用ADO、OLE DB,ODBC之类的才能连接数据库呢?
#5
不然怎么连接到数据库,不是要通过MS的操做系统的“ADO、OLE DB,ODBC”,然后调用MYSQL的驱动程序,实现应用程序和MSSQL之间的数据的交互的吗?
难道,应用程序直接调用MSSQL的驱动程序,而不经过操作系统?
不解,不解啊。。。
#6
看来楼主钻牛角尖了!
#7
#8
大侠嘞???
#9
蛋疼帖~鉴定完毕!
#10
windows和linux是截然不同的两个操作系统,不要以windows的思维去研究linux。
之所以说php快捷方便,其优点在于此,方便!只需要mysql_connect,mysqli_connect,mysql_pconnect之类的函数就能连接mysql数据库。
我不知道楼主有没有在linux编译过php。安装php的步骤以及方式,windows和linux是不一样的。我先给你看看编译命令吧。
'./configure' '--prefix=/usr/local/php' '--with-mysql=/usr/local/mysql' '--with-mysqli=/usr/local/mysql/bin/mysql_config'
我只给你贴了一小部分命令,当然,你要安装更多插件,就得输入更多的命令。
你想用LAMP环境来开发php网站的话,先安装mysql数据库,最后一个安装php。
'--with-mysql=/usr/local/mysql' '--with-mysqli=/usr/local/mysql/bin/mysql_config' 这句话包含的意思你该明白吧,就是说编译php的时候已经把mysql的安装目录以及设置参数都载入了,也就是说安装php之后php和mysql已经做好连接准备了。就是楼主说过的所谓的ADO,OLE DB,ODBC之类的。
哈哈!不知道我说得对不对,欢迎楼主以及其他各路高手反驳~~本人洗耳恭听!
#11
哥们适合搞程序!~~~
敢于钻研!~~~
敢于钻研!~~~
#12
只要解决问题,不管什么手段
#13
端口,协议,socket。
#14
在另一个帖子里回过了,不重复了,请楼主参考:
http://topic.csdn.net/u/20101205/19/1cf958b6-950b-4a3a-94cb-a952ea2d93b8.html
http://topic.csdn.net/u/20101205/19/1cf958b6-950b-4a3a-94cb-a952ea2d93b8.html
#15
管他什么什么的,能用就行,发下我的连接代码
<?
$database_address = "数据库IP";
$database_username = "数据库名称";
$database_password = "数据库密码";
$database_tablename = "数据库";
$con = mysql_connect($database_address, $database_username, $database_password);
mysql_select_db($database_tablename, $con);
?>
<?
$database_address = "数据库IP";
$database_username = "数据库名称";
$database_password = "数据库密码";
$database_tablename = "数据库";
$con = mysql_connect($database_address, $database_username, $database_password);
mysql_select_db($database_tablename, $con);
?>
#16
apache监听的是80端口(默认),mysql默认监听的是3306端口。其实php跟mysql通讯,就是走的socket通讯,与3306端口建立连接,并来回收发数据。php的mysql扩展其实就是规定了一些socket通讯时的数据包收发的规则。
详情可以去研究php源码,ext\mysql\php_mysql.c690行php_mysql_do_connect函数。
详情可以去研究php源码,ext\mysql\php_mysql.c690行php_mysql_do_connect函数。
#17
认真你就输了,研究这个没有任何实际意义,假如你不是想参与php的编写