Chinaunix

标题: PHP连接Mysql数据库需加参数应该怎么写? [打印本页]

作者: cz_huangji    时间: 2006-08-04 16:12
标题: PHP连接Mysql数据库需加参数应该怎么写?
比如要加上端口号或Socket等等的参数,用mysql_connect应该怎么写或是还能不能实现?谢谢指点
作者: okchina    时间: 2006-08-04 17:17
原帖由 cz_huangji 于 2006-8-4 16:12 发表
比如要加上端口号或Socket等等的参数,用mysql_connect应该怎么写或是还能不能实现?谢谢指点

PHP 手册
后退  前进






mysql_connect
(PHP 3, PHP 4, PHP 5)

mysql_connect -- 打开一个到 MySQL 服务器的连接
说明
resource mysql_connect ( [string server [, string username [, string password [, bool new_link [, int client_flags]]]]] )


如果成功则返回一个 MySQL 连接标识,失败则返回 FALSE。

mysql_connect() 建立一个到 MySQL 服务器的连接。当没有提供可选参数时使用以下默认值:server = 'localhost:3306',username = 服务器进程所有者的用户名,password = 空密码。

server 参数可以包括端口号。例如 "hostname:port" 或者是到本地套接字的路径,例如本机上的 ":/path/to/socket"。

注: 无论指定 "localhost" 或者 "localhost:port" 作为 server,MySQL 客户端库将覆盖之并尝试连接到本地套接字(Windows 中的名字管道)。如果希望使用 TCP/IP 连接,用 "127.0.0.1" 替代 "localhost"。如果 MySQL 客户端库试图连接到错误的本地套接字,则应该在 PHP 配置中将 mysql.default_host 设为正确的路径并使 server 字段为空。

":port" 的支持是 PHP 3.0B4 起加入的。

":/path/to/socket" 的支持是 PHP 3.0.10 起加入的。

可以在函数名前加上 @ 来抑制失败时产生的错误信息。


如果用同样的参数第二次调用 mysql_connect(),将不会建立新连接,而将返回已经打开的连接标识。参数 new_link 改变此行为并使 mysql_connect() 总是打开新的连接,甚至当 mysql_connect() 曾在前面被用同样的参数调用过。参数 client_flags 可以是以下常量的组合:MYSQL_CLIENT_COMPRESS,MYSQL_CLIENT_IGNORE_SPACE 或者 MYSQL_CLIENT_INTERACTIVE。

注: new_link 参数自 PHP 4.2.0 起可用。

client_flags 参数自 PHP 4.3.0 起可用。

一旦脚本结束,到服务器的连接就会被关闭。除非之前已经调用了 mysql_close() 来关闭它。

例子 1. MySQL 连接例子

<?php
    $link = mysql_connect("localhost", "mysql_user", "mysql_password")
        or die("Could not connect: " . mysql_error());
    print ("Connected successfully");
    mysql_close($link);
?>  



参见 mysql_pconnect() 和 mysql_close()。
作者: cz_huangji    时间: 2006-08-04 17:35
多谢楼上仁兄的解答!
作者: z-fh    时间: 2006-08-07 09:57
建议楼主改为php5的写法。
$db = mysqli_connect("localhost", "aaa", "bbb", "t1");
if (!$db)
{
  echo 'could not connect mysql'.mysqli_connect_error() ;
  exit;
}
作者: HonestQiao    时间: 2006-08-07 10:47
原帖由 z-fh 于 2006-8-7 09:57 发表
建议楼主改为php5的写法。
$db = mysqli_connect("localhost", "aaa", "bbb", "t1");
if (!$db)
{
  echo 'could not connect mysql'.mysqli_connect_error() ;
...


mysqli

这个需要服务器配置的是mysqli,通用一些地话,还是mysql

如果全部都是自己的,包括服务起什么的配置的,可以考虑配置mysqli
作者: okchina    时间: 2006-08-07 16:00
我也很想试试mysqli.
但是无奈现在最高的只是4.1.18啊...




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2