哈嘍,看到這裏希望小夥伴們都把wampserver環境安裝好了,如果還沒有安裝或創建數據表就移步去看我上一篇文章吧。OK~接下我們將進入代碼實現部分,首先我們需要一個文本編輯器,可以是電腦自帶的notepad也可以是notepad++或者是sublime,博主習慣用sublime,也寫過一篇sublime的安裝教程,還沒有的小夥伴可以去看一下,強烈推薦用sublime喲。
好了話不多說直接進入正題吧,首先要啓動我們的wampserver服務器,然後單擊圖標選擇www directory,接下來會在這個創建一個名爲MyWebsite文件夾作爲我們的項目文件,這個文件名可以自己修改。
創建之後打開這個文件夾首先創建創建一個sql.func.php,這個文件來對底層函數進行一下封裝,代碼如下:
<?php
/**
*彈框
*/
function _alert($_info){
echo "<script type='text/javascript'>alert('$_info');history.back();</script>";
exit;
}
/**
* _location():彈出一個對話框並且轉跳到另一個界面
* @access public
* @param string $_info 對話框上顯示的信息
* @param string $_url 轉跳的頁面地址
* @return void
*/
function _location($_info,$_url){
if($_info==null){
header('Location:'.$_url);
}else{
echo "<script type='text/javascript'>alert('$_info');location.href='$_url';</script>";
exit;
}
}
/**
* _connect():連接數據庫
* @access public
* @return void
*/
function _connect()
{
//定義全局變量$_conn,在函數外部也能調用
global $_conn;
$_conn=mysqli_connect(DB_HOST, DB_USER,DB_PWD);
if (!$_conn) {
exit('數據庫連接失敗:'.mysqli_error($_conn));
}
}
/**
* _select_db():選擇數據庫
* @access public
* @return void
*/
function _select_db(){
global $_conn;
if(!mysqli_select_db($_conn,DB_NAME)){
exit('找不到數據庫'.mysqli_error($_conn));
}
}
/**
* _set_names():設置字符編碼
* @access public
* @return void
*/
function _set_names(){
global $_conn;
if(!mysqli_query($_conn,'SET NAMES UTF8')){
exit('字符編碼錯誤'.mysqli_error($_conn));
}
}
/**
* _query():執行sql語句
* @access public
* @param string $_sql sql操作語句
* @return string 返回結果集
*/
function _query($_sql){
global $_conn;
if(!$result=mysqli_query($_conn,$_sql)){
exit('SQL執行失敗'.mysqli_error($_conn).mysqli_errno($_conn));
}
return $result;
}
/**
* _fetch_array():根據sql語句遍歷數據庫。返回一個數組,鍵名是數據庫的表單結構名
* @access public
* @param string $_sql sql操作語句
* @return array|null
*/
function _fetch_array($_sql){
return mysqli_fetch_all(_query($_sql),MYSQLI_ASSOC);
}
/**
* _num_rows():返回數據庫中查找條件的數據個數
* @access public
* @param string $_sql sql操作語句
* @return int 返回數據個數
*/
function _num_rows($_sql){
return mysqli_num_rows(_query($_sql));
}
/**
* _affected_rows():返回數據庫裏被影響到的數據條數
* @access public
* @return int 返回影響到的記錄數
*/
function _affected_rows(){
global $_conn;
return mysqli_affected_rows($_conn);
}
/**
* _is_repeat():判斷數據在數據庫裏是否已經存在
* @access public
* @param string $_sql sql操作語句
* @param string $_info 彈窗上顯示的文字
* @return void
*/
function _is_repeat($_sql,$_info){
if(_fetch_array($_sql)){
_alert_back($_info);
}
}
/**
* _close():關閉數據庫
* @access public
*/
function _close(){
global $_conn;
if(!mysqli_close($_conn)){
exit('數據庫關閉異常'.mysqli_error($_conn));
}
}
?>
connect.php 的文件,這個文件是連接數據庫的文件,然後open with sublime text 進行編輯。連接數據庫代碼如下:
<?php
$_conn=mysqli_connect('localhost','root','');
if (!$_conn) {
exit('數據庫連接失敗:'.mysqli_error($_conn));
}
mysqli_select_db($_conn,'people')or die('找不到數據庫:'.mysqli_error($_conn).mysqli_errno($_conn));
mysqli_query($_conn,"SET NAMES UTF8");
// var_dump($_conn);
include "sql.func.php";
?>
註釋的那部分是爲了方便調試,檢驗是否成功連接到了數據庫。在第二行的連接操作處就是我上一節提到的連接用戶名和密碼,如果沒有重新設置就這樣寫,如果自己修改過賬號密碼就需要將相應的值修改一下。
然後開始寫我們的主頁,同樣新創建一個index.html,寫一個簡單的登錄註冊錨鏈接,代碼如下
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>首頁</title>
</head>
<body>
<a href="login.php">登錄</a>
<a href="register.php">註冊</a>
</body>
</html>
創建成功後不要直接雙擊打開,你直接在瀏覽器網址欄輸入:http://localhost/MyWebsite/index.html 來打開
然後再創建一個login.php,編寫登錄頁面,假設登錄成功就跳轉到CSDN首頁,代碼如下
<?php
include "./connect.php";
//接收數據
if(isset($_POST['userid']) && isset($_POST['password'])){
//從數據庫裏查找用戶名是否存在
$_sql = "SELECT user_id,user_password FROM user WHERE user_id='{$_POST['userid']}'";
$result = _fetch_array($_sql);
if(!empty($result[0])){
if($result[0]['user_password']==$_POST['password']){
_location('登錄成功','http://www.csdn.net/');
}else{
_alert('密碼錯誤');
}
}else{
_alert('用戶名不存在');
}
_close();
exit;
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>登錄</title>
</head>
<body>
<form action="login.php" method="post">
用戶ID: <input type="text" name="userid">
密碼: <input type="password" name="password">
<input type="submit" value="提交">
</form>
</body>
</html>
登錄功能就實現了,那麼接下來就是註冊功能,同樣需要新建一個register.php,註冊代碼如下:
<?php
include "./connect.php";
//接收數據
if(isset($_POST['userid']) && isset($_POST['password'])){
//插入到數據庫中
$_sql = "INSERT INTO user(user_id,user_password)values('{$_POST['userid']}','{$_POST['password']}')";
$_result = _query($_sql);
_location("註冊成功!","index.html");
_close();
exit;
}
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>註冊</title>
</head>
<body>
<form action="register.php" method="post">
用戶ID: <input type="text" name="userid">
密碼: <input type="password" name="password">
<input type="submit" value="註冊">
</form>
</body>
</html>
註冊成功後可以在數據庫裏看到,user數據表中就會多一個你剛剛註冊的用戶。
好了一個簡單的登錄註冊功能就這樣實現了,這篇小白教程就結束了,希望能幫助到你!喜歡的話就點個贊哦~~
這裏附上實例文件:MyWebsite