当前位置: 首页 > 文章教程  > 计算机与互联网 > 网络编程

14.2使用PHP连接MySQL数据库

9/17/2020 9:31:19 PM 人评论

14.2使用PHP连接MySQL数据库

14.2 使用PHP连接MySQL数据库

14.1节介绍了PHP操作MySQL的主要函数,本节通过具体实例介绍这些函数在PHP程序中的具体用法。

14.2.1 建立和数据库的连接

在PHP程序中操作数据库,首先要连接数据库。代码14-1演示了如何使用函数mysql_connect()连接本地数据库。

代码14-1 使用函数mysql_connect()连接本地数据库14-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 ?>

【代码解析】代码第06行使用函数mysql_connect()尝试连接本地的MySQL数据库,函数mysql_connect()中参数$host的值为localhost,表示建立一个到本地的MySQL数据库连接。程序14-1.php中,函数mysql_connect()连接MySQL服务器使用的用户名是root,密码是admin,读者可能需要根据自己的实际设置改变这两个参数(以下同),以便程序可以正确连接到MySQL数据库。接着,程序判断函数mysql_connect()的返回值,如果返回值为FALSE,程序会提示一个“数据库连接失败的”的信息,同时使用函数mysql_error()将具体的错误信息输出到Web页面。这里使用了语言结构die(),它的功能类似于eixt,输出一段信息并立即中断程序的执行。

如果函数mysql_connect()连接本地MySQL数据库服务器成功,代码14-1会向页面输出一个“数据库连接成功”的提示信息。如果本地MySQL已启动,并且程序执行正常,该代码会输出如图14-2所示的结果。

接下来看看如果没有成功连接到数据库的效果。对代码14-1稍做修改,比如连接一个不存在MySQL服务器,或向mysql_connect传入一个错误的用户名或密码,然后访问14-1.php,就会看到类似图14-3的效果。

从图14-3可以看出,连接MySQL失败时,函数mysql_error()产生了一条信息,该信息描述了连接失败的原因为Unknown MySQL server host'localhost1',该信息的含义是未知的MySQL服务器localhost1。通常在PHP程序中使用函数mysql_error()来了解PHP操作数据库出现问题的某些原因。

图14-2 使用mysql_connect()函数连接MySQL数据库

图14-3 连接数据库失败时的效果

14.2.2 持久连接和临时连接

除mysql_connect()之外,PHP提供了另外一个函数也可以打开到MySQL服务器的连接,这个函数是mysql_pconnect()。该函数的语法和函数mysql_connect()类似,它返回的是到MySQL服务器的持久连接,如果出错会返回FALSE。该函数和mysql_connect()非常相似,但也有两个主要区别。

·mysql_pconnect()会查找一个在同一主机上使用相同用户名和密码已经建立的连接,如果找到,该函数就返回此连接,而不是创建一个新连接。

·当PHP程序执行完成后,使用mysql_pconnect()建立的MySQL连接不会被关闭,mysql_close()也不会关闭由mysql_pconnect()建立的连接。为区别于由函数mysql_pconnect()建立的连接,可以把由函数mysql_connect()建立的连接称为临时连接。

说明 大多数情况下,程序只需使用函数mysql_connect()来建立到MySQL服务器的连接即可。建立一个持久连接有时是很消耗系统资源的,只有对那些连接开销比较大的系统,才考虑使用持久连接。

14.2.3 关闭连接

在PHP程序中,推荐在程序中明确调用mysql_close()来关闭数据库连接。代码14-2演示了在成功连接到数据库之后,调用函数mysql_close()关闭该连接。

代码14-2 使用mysql_close()关闭数据库连接14-2.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 
     13 if(mysql_close($conn))                                  //
关闭打开的连接
     14 {
     15     echo '<br/>........<br/>';
     16     echo '
到数据库的连接已经成功关闭';
     17 }
     18 ?>

【代码解析】代码第06行首先建立一个到MySQL服务器的连接$conn,然后第13行调用函数mysql_close()关闭这个连接,并通过该函数的返回值判断关闭是否成功,如果成功,将输出一段提示信息。代码14-2的执行结果如图14-4所示。

图14-4 关闭到MySQL服务器的连接

相关教程

共有条评论 网友评论

验证码: 看不清楚?