PHP MySQLi 系列函數

如何用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);
相關文章
相關標籤/搜索