首先我们先创建一个名为myschool的数据库,在创建一个如下图的数据表,表名为user
建立完数据库后,我们建立php文件来连接数据库
连接数据库有三种方式:
(1).使用mysql
(2).使用mysqli
(3)使用PDO
在这里我们使用mysqli来连接数据库,它也有两种方式,一种是使用面向对象的方式,一种是使用面向过程的方式,在现在使用面向对象的方式是主流
在面向对象的方式中mysqli被封装成一个类,它的构造方法如下
construct ([ string $host [, string $username [, string $passwd [, string $dbname [, int $port [, string $socket ]]]]]] )
在上述语法中涉及到的参数说明如下。
host:连接的服务器地址。
username:连接数据库的用户名,默认值是服务器进程所有者的用户名。
passwd:连接数据库的密码,默认值为空。
dbname:连接的数据库名称。
port:TCP端口号。
socket:UNIX域socket。
关闭数据库我们使用 bool mysqli::close ( void ) 它失败是返回true,成功时返回flase
然后我们来连接数据库
<?php
header('content-type:text/html;charset=utf-8');
//链接mysql数据库
//new实例化对象
//使用面向对象的mysqli
$mysqli = @new mysqli("localhost","root","","myschool");
echo '连接数据库成功';
//关闭数据库连接
echo '<br>';
$mysqli->close();//在PHP中我们调用一个对象中的方法我们使用 ->
echo '关闭连接'
输出结果
连接数据库成功
关闭连接
接下来说检测连接是否出错
我们使用$mysqli->connect_error
会返回一个错误的字符串,如果没有错误会返回空值
//null 默认会转化成false
//非空字符串会转化成true
if ( $mysqli -> connect_error ) {
die( '连接数据库失败: ' . $mysqli -> connect_error );
}
echo '连接数据库成功';
因为null会转化成false,而空字符串则会转化成true,所以当connect_error为空字符串时就会转化为true,然后执行下面代码输出|“连接数据库失败”,反之当connect_error为null时,就会转化为false,就会输出|“连接数据库成功”。
完整版代码如下
<?php
header('content-type:text/html;charset=utf-8');
//链接mysql数据库
//new实例化对象
//使用面向对象的mysqli
$mysqli = @new mysqli("localhost","root","","myschool");
//null 默认会转化成false
//非空字符串会转化成true
if ( $mysqli -> connect_error ) {
die( '连接数据库失败: ' . $mysqli -> connect_error );
}
echo '连接数据库成功';
//关闭数据库连接
echo '<br>';
$mysqli->close();//在PHP中我们调用一个对象中的方法我们使用 ->
echo '关闭连接'