PHP利用MySQLi函数连接数据库

一、连接数据库

  • mysqli_connect

# 注意抑制符的使用

$link = @mysqli_connect('localhost','root','root2','test');


二、获取连接失败原因

  • 错误号:mysqli_connect_errno
  • 错误信息:mysqli_connect_error

if( mysqli_connect_errno() ){
var_dump(mysqli_connect_error());
}


三、选择操作的数据库

if(!mysqli_select_db($link,'wechat')){
var_dump(mysqli_errno($link).':'.mysqli_error($link));
}


四、选择字符集

if(!mysqli_set_charset($link,'utf-8')){
var_dump(mysqli_errno($link).':'.mysqli_error($link));
}


五、准备要执行的SQL语句

$sql = "SELECT * FROM `jk_message` ORDER BY id DESC";


注意:mysqli_real_escape_string(link,param);

六、执行SQL语句

$result = mysqli_query($link,$sql);


七、处理执行结果

  • mysqli_num_rows 返回查询结果记录数
  • mysqli_affected_rows 返回操作(增删改)影响的行数
  • mysqli_fetch_row 获取一条数据的索引数组
  • mysqli_fetch_assoc 获取一条数据的关联数组
  • mysqli_insert_id() 获取新增记录的id
while ($rows = mysqli_fetch_assoc($result)){
var_dump($rows);
}


八、释放资源、关闭连接

  • 释放资源:mysqli_free_result
  • 关闭连接:mysqli_close
mysqli_free_result($result);
mysqli_close($link);


配置文件

define('DB_HOST','127.0.0.1');        //主机..
define('DB_USER','root'); //管理员
define('DB_PWD','jack123456'); //密码
define('DB_PREFIX','ps_'); //定义前缀常量..
define('DB_NAME','panshinet'); //这里我们先这么定义..注意这里是库名
define('DB_CHARSET','utf8'); //定义字符集..


实例:

//连接数据库
$link=@mysqli_connect("localhost","root","root","jkdb");
if(!$link){
//写入错误日志
$logs=date("Y-m-d H:i:s").mysqli_connect_error().PHP_EOL;
file_put_contents("mysql.err",$logs,FILE_APPEND);
}
//设置字符集
if(!mysqli_set_charset($link,"utf8")){
$logs=date("Y-m-d H:i:s")."设置字符集失败".PHP_EOL;
file_put_contents("mysql.err",$logs,FILE_APPEND);
}
//查询
$sql="select money from user where username='张无忌'";
$res=mysqli_query($link,$sql);
$money=mysqli_fetch_assoc($res)["money"];
var_dump($money);
//关闭数据库
mysqli_free_result($res);
mysqli_close($link);