如何用mysqli系列函数链接一个mysql数据库?javascript
1.PHP mysqli_connect()函数:mysqli_connect() 函数打开一个到 MySQL 服务器的新的链接。php
语法:mysqli_connect ( host (规定主机名或IP地址), username(mysql用户名), password(mysql密码), dbname(默认使用的数据库) )html
打开一个到 MySQL 服务器的新的链接:java
<?php $con = mysqli_connect("localhost","wrong_user","password","my_db"); if(!$con) { die( "链接错误:".mysqli_connect_error() ); } ?>
2. PHP mysqli_query() 函数 : 执行某个针对数据库的查询。mysql
语法:mysqli_query( connection(必需。规定要使用的 MySQL 链接。),query(必需,规定查询字符串,即查询语句。),resultmode);sql
选择数据库:数据库
<?php //假定数据库用户名:root,密码:123456,数据库:mengli $con = mysqli_connect("localhost","root","123456","mengli"); $sql = "SELECT*FROM user WHERE username = '".$_POST['username']."'"; if( mysqli_connect_errno($con) ){ echo "链接MySql失败:".mysqli_connect_error(); } //执行查询 mysqli_query($con,$sql); //关闭先前打开的数据库链接: mysqli_close($con); ?>
执行某个数组
3. PHP mysqli_fetch_all() 函数:从结果集中取得全部行做为关联数组,或数字数组,或两者兼有。注释:该函数只在带有 MySQL Native Driver 时可用。服务器
语法:mysqli_fetch_all( result(必需。规定由 mysqli_query()、mysqli_store_result() 或 mysqli_use_result() 返回的结果集标识符。) , resulttype (规定应该产生哪一种类型的数组));函数
<?php //假定数据库用户名:root,密码:123456,数据库:mengli $con = mysqli_connect("localhost","root","123456","mengli"); $sql = "SELECT*FROM user WHERE username = '".$_POST['username']."'"; if( mysqli_connect_errno($con) ){ echo "链接MySql失败:".mysqli_connect_error(); } //执行查询 $result = mysqli_query($con,$sql); // 获取数据 mysqli_fetch_all($result,MYSQLI_ASSOC); // 释放结果集 mysqli_free_result($result); //关闭先前打开的数据库链接: mysqli_close($con); ?>
首先建立一个index.html文件(表单)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <form action="index.php" method="post"> 用户名:<input type="text" name="username"> 密码:<input type="password" name="password"> <button type="submit">提交</button> </form> </body> <script type="text/javascript"> </script> </html>
index.php文件
<?php $db = []; $db["host"] = "127.0.0.1"; $db["user"] = "root"; $db["pwd"] = "root"; $db["database"] = "mengli"; $con = mysqli_connect($db['host'], $db['user'], $db['pwd'], $db['database']); $sql = "SELECT * FROM user WHERE username = '" . $_POST['username'] . "'"; $result = mysqli_query($con, $sql); $result = mysqli_fetch_all($result); //检查获取的数据是否一致 //若是获取的数据为空,即用户输入的用户名不存在 if ( empty( $result ) ) { echo "找不到这个用户";//若是获取的数据为空,即用户输入的用户名不存在 die; } if( !empty( $result ) ){//若是获取的数据不为空 //检查客户输入的密码是否与所获数据中的密码一致 if ($result[0][2] == $_POST["password"]) { echo "登入成功"; die; } else { echo "密码错误"; die; } } // 释放结果集 mysqli_free_result($result); //关闭先前打开的数据库链接: mysqli_close($con);