13.2 使用PHP连接MySQL数据库
上一节介绍了PHP操作MySQL的主要函数,这节通过具体实例,来了解这些函数在PHP程序中的具体用法。
13.2.1 建立和数据库的连接
在PHP程序中操作数据库,首先要连接数据库。代码13-1演示了使用函数mysql_connect()连接本地的数据库。
代码13-1 使用函数mysql_connect()连接数据库13-1.php
01 <?php
02 $host='localhost';//定义服务器
03 $user_name='root';//定义用户名
04 $password='admin';//定义密码
05
06 $conn=mysql_connect($host,$user_name,$password);//连接MySQL
07 if(!$conn)
08 {
09 die('数据库连接失败:'.mysql_error());
10 }
11 echo'数据库连接成功!';
12 ?>
【代码解析】这段代码第6行使用函数mysql_connect()尝试连接本地的MySQL数据库,函数mysql_connect()中参数$host的值为localhost,表示建立一个到本地的MySQL数据库连接。13-1.php中,函数mysql_connect()连接MySQL服务器使用的用户名是root,密码是admin,读者可能需要根据自己的实际设置改变这两个参数(以下同),以便程序可以正确连接到MySQL数据库。接着,程序判断函数mysql_connect()的返回值,如果返回值为FALSE,程序会提示一个“数据库连接失败”的信息,同时使用函数mysql_error()将具体的错误信息输出到Web页面。这里使用了语言结构die(),它的功能类似于eixt,输出一段信息并立即中断程序的执行。
如果函数mysql_connect()连接本地MySQL数据库服务器成功,代码13-1会向页面输出一个“数据库连接成功”的提示信息。如果本地MySQL已启动,并且程序执行正常,该代码会输出如图13-2所示的结果。
接下来看看如果没有成功连接到数据库的效果。对代码13-1稍做修改,比如连接一个不存在MySQL服务器,或向mysql_connect传入一个错误的用户名或密码,然后访问13-1.php,就会看到类似图13-3的效果。
从图13-3可以看出,连接MySQL失败时,函数mysql_error()产生了一条信息,该信息描述了连接失败的原因:Unknown MySQL server host'localhost1',该信息的含义是未知的MySQL服务器localhost1。通常在PHP程序中使用函数mysql_error(),来了解PHP操作数据库出现问题的某些原因。