前言
大家好,我是南木元元,熱衷分享有趣實(shí)用的文章。本項(xiàng)目搭建了一個(gè)簡單的頁面,用php+mysql來實(shí)現(xiàn)登錄、注冊以及注銷的功能。
實(shí)現(xiàn)效果
未登錄:從右上方可以看到,當(dāng)前是未登錄的主頁
登錄頁:點(diǎn)擊登錄,來到登錄頁面
注冊頁:如果還沒注冊,就點(diǎn)擊進(jìn)行注冊
登錄成功:登錄成功進(jìn)入主頁,看到右上方顯示當(dāng)前登錄的用戶名。點(diǎn)擊用戶名后的退出,即可退出登錄。
代碼實(shí)現(xiàn)
- 項(xiàng)目目錄
- 核心代碼
config.php:保存數(shù)據(jù)庫連接信息
<?php
//數(shù)據(jù)庫連接信息
$host='localhost'; //數(shù)據(jù)庫服務(wù)器主機(jī)名
$user='root'; //數(shù)據(jù)庫用戶名
$password='root'; //數(shù)據(jù)庫用戶密碼
$dbname='itcast'; //數(shù)據(jù)庫名
//開啟session
session_start();
register.php:實(shí)現(xiàn)注冊功能
<?php
require'./config.php'; //引入公共文件開啟session功能
// require'./html/register.html'; //調(diào)用內(nèi)容模板
if($_POST){
$link=mysqli_connect($host,$user,$password,$dbname);
if(!$link){
display('數(shù)據(jù)庫連接失敗。'.mysqli_connect_error());
}
mysqli_set_charset($link,'utf8');
$fields= array('name', 'password', 'sex', 'email', 'course', 'channel', 'message') ;
//$fields= ['name', 'password', 'sex', 'email', 'course', 'channel', 'message'] ;
//$data[];
$data=array();
foreach($fields as $v){
$data[$v]=isset($_POST[$v])?$_POST[$v]:'';
}
if(is_array($data['channel'])){
$data['channel']==implode(',', $data['channel']);
}
foreach($data as $k=>$v){
$data[$k]=mysqli_real_escape_string($link,$v);
}
$result=mysqli_query($link,"SELECT 1 FROM `user` WHERE `name` ='{$data['name']}'");
if(!$result){
display('數(shù)據(jù)庫操作失敗:'.mysqli_error($link));
}
if(mysqli_num_rows($result)){
display('該用戶名已被注冊!');
}
$sql_values=implode("','",$data);
$sql_fields=implode("`,`",$fields);
//執(zhí)行SQL語句
$result=mysqli_query($link,"INSERT INTO user (`$sql_fields`) VALUES ('$sql_values')");
if($result){
header('Location:login.php');
exit;
}else{
display('數(shù)據(jù)庫操作失?。?.mysqli_error($link));
}
}
display();
function display($message=false){
require'./html/register.html';
exit;
}
login.php:實(shí)現(xiàn)登錄功能
<?php
require'./config.php'; //引入公共文件開啟session功能
if($_POST){
$link=mysqli_connect($host,$user,$password,$dbname);
if(!$link){
display('數(shù)據(jù)庫連接失敗。'.mysqli_connect_error());
}
mysqli_set_charset($link,'utf8');
//接收用戶名和密碼
$name=isset($_POST['name'])? $_POST['name']:'';
$password=isset($_POST['password'])? $_POST['password']:'';
$name=mysqli_real_escape_string($link,$name);
$password=mysqli_real_escape_string($link,$password);
$result=mysqli_query($link,"SELECT 1 FROM `user` WHERE `name` ='$name' AND `password`='$password'");
if(!$result){
display('數(shù)據(jù)庫操作失?。?.mysqli_error($link));
}
if(mysqli_num_rows($result)){
$_SESSION['user']=$name;
header('Location:index.php');
exit;
}else{
display('登錄失敗,用戶名或密碼有誤。');
}
}
display();
function display($message=false){
require'./html/login.html';
exit;
}
index.php:主頁
<?php
require'./config.php'; //引入公共文件開啟session功能
require'./html/index.html'; //調(diào)用內(nèi)容模板
logout.php:實(shí)現(xiàn)注銷功能
<?php
require'./config.php';
unset($_SESSION['user']); //用戶退出功能
header('Location:index.php'); //跳轉(zhuǎn)頁面
index.html
<?php require'./html/header.html';?>
<div class="banner">
<div class="banner_pic" id="banner_pic">
<div class="current"><img src="images/01.jpg" alt=""></div>
<div class="pic"><img src="images/02.jpg" alt=""></div>
<div class="pic"><img src="images/03.jpg" alt=""></div>
<div class="pic"><img src="images/04.jpg" alt=""></div>
</div>
<ol id="button">
<li class="current">1</li>
<li class="but">2</li>
<li class="but">3</li>
<li class="but">4</li>
</ol>
</div>
<div class="stages">
<div class="stages_title">通知公告</div>
<div class="stages_con">
<marquee>
<ul>
<li><a href="#">【繪畫百科】上色那些事!</a></li>
<li><a href="#">手繪、插畫素材免費(fèi)下載!</a></li>
</ul>
</marquee>
</div>
</div>
<div class="content">
<div class="line1">
<div class="left">
<div class="module">
<div class="title">
<div class="title_left"></div>
<div class="title_right"><span></span>課程分類</div>
<div class="title_bottom"></div>
</div>
<div class="module_con">
<ul>
<li><a href="#">素描課程</a></li>
<li><a href="#">油畫課程</a></li>
<li><a href="#">頭像課程</a></li>
<li><a href="#">水彩課程</a></li>
<li><a href="#">速寫課程</a></li>
<li><a href="#">CG課程</a></li>
<li><a href="#">彩鉛課程</a></li>
<li><a href="#">......</a></li>
</ul>
</div>
</div>
<div class="job">
<div class="job_title"><span></span>熱門文章</div>
<div class="job_con">
<ul>
<li><span>1</span><a href="#">看看這幾位手繪大牛的作品</a></li>
<li><span>1</span><a href="#">插畫師該如何自我成長</a></li>
<li><span>1</span><a href="#">動漫繪畫百科之眼睛畫法...</a></li>
<li><span>1</span><a href="#">頭發(fā)N種畫法...</a></li>
<li><span>1</span><a href="#">構(gòu)圖樣式20例分享...</a></li>
</ul>
</div>
</div>
</div>
<div class="center">
<div class="message">
<div class="message_title">
<ol id="message">
<li class="current"><a herf="#"><span>專業(yè)動態(tài)</span></a></li>
<li><a href="#"><span>行業(yè)動態(tài)</span></a></li>
</ol>
<div class="more"><a href="#"><img src="images/more.gif" align="middle" /></a></div>
</div>
<div id="message_con">
<dl class="current">
<dt class="message_left"></dt>
<dd class="message_right">
<ul class="left_ul">
<li><span></span><a href="#">時(shí)髦青年召集令!濃濃嬉皮風(fēng)、動感disco...</a></li>
<li><span></span><a href="#">快來參加槍火游俠英雄角色設(shè)定大賽呀!</a></li>
<li><span></span><a href="#">博郡汽車品牌LOGO設(shè)計(jì)征集開賽啦!</a></li>
<li><span></span><a href="#">收官至!SurfaceBook 2隨性專屬包圖案設(shè)計(jì)...</a></li>
<li><span></span><a href="#">美的空調(diào)創(chuàng)意海報(bào)征集大賽來啦~</a></li>
</ul>
<ul class="right_ul">
<li><a href="#">2018/06</a></li>
<li><a href="#">2018/06</a></li>
<li><a href="#">2018/06</a></li>
<li><a href="#">2018/06</a></li>
<li><a href="#">2018/07</a></li>
</ul>
</dd>
</dl>
<dl>
<dt class="meesage_left1"></dt>
<dd class="message_right">
<ul class="left_ul">
<li><span></span><a herf="#">辯論!中國最優(yōu)秀的動畫作品是那一部?</a></li>
<li><span></span><a herf="#">測試:你會轉(zhuǎn)到到那所二次元學(xué)校讀書?</a></li>
<li><span></span><a herf="#">日宅:最能體現(xiàn)手繪技能的是什么?</a></li>
<li><span></span><a herf="#">【手繪節(jié)操】你的手繪作是臨摹那部作品?</a></li>
<li><span></span><a herf="#">手繪來襲,全新出擊</a></li>
</ul>
<ul class="right_ul">
<li><a href="#">2018/07</a></li>
<li><a href="#">2018/07</a></li>
<li><a href="#">2018/06</a></li>
<li><a href="#">2018/07</a></li>
<li><a href="#">2018/06</a></li>
</ul>
</dd>
</dl>
</div>
</div>
<div class="teacher">
<div class="teacher_title"><span>插畫師</span><a href="#"><img src="images/more.gif" /></a></div>
<div class="teacher_con">
<ul>
<li>
<div><a href="#"><img src="images/teacher01.gif"/></a></div>
<div class="name"><a href="#">諾曼洛克威爾</a></div>
</li>
<li>
<div><a href="#"><img src="images/teacher02.gif"/></a></div>
<div class="name"><a href="#">塔莎杜朵</a></div>
</li>
<li>
<div><a href="#"><img src="images/teacher03.gif"/></a></div>
<div class="name"><a href="#">竹岡美穗</a></div>
</li>
<li>
<div><a href="#"><img src="images/teacher04.gif"/></a></div>
<div class="name"><a href="#">MarcosChin</a></div>
</li>
</ul>
</div>
</div>
</div>
<div class="right">
<div class="course">
<h3>精品課程</h3>
<ul>
<li><a href="#">美術(shù)基礎(chǔ)精品課程</a></li>
<li><a href="#">uv拆分課程</a></li>
<li><a href="#">網(wǎng)游模型制作課程</a></li>
<li><a href="#">材質(zhì)深入刻畫</a></li>
<li><a href="#">Q版角色建模</a></li>
</ul>
</div>
<div class="study">
<a href="#"><img src="images/study.gif" /></a>
</div>
</div>
</div>
<div class="line2">
<div class="book">
<div class="book_title"><span>推薦書籍</span><a href="#"><img src="images/more.gif" /></a></div>
<div class="book_con">
<ul>
<li>
<div><a href="#"><img src="images/book01.gif" /></a></div>
<div class="name"><a href="#">簡筆畫教程</a></div>
</li>
<li>
<div><a href="#"><img src="images/book02.gif" /></a></div>
<div class="name"><a href="#">鉛筆的溫情手</a></div>
</li>
<li>
<div><a href="#"><img src="images/book03.gif" /></a></div>
<div class="name"><a href="#">時(shí)裝畫手繪</a></div>
</li>
<li>
<div><a href="#"><img src="images/book04.gif" /></a></div>
<div class="name"><a href="#">鉛筆的魔法教程</a></div>
</li>
<li>
<div><a href="#"><img src="images/book05.gif" /></a></div>
<div class="name"><a href="#">水彩手繪教程</a></div>
</li>
<li class="no_mar">
<div><a href="#"><img src="images/book06.gif" /></a></div>
<div class="name"><a href="#">古爾德手繪</a></div>
</li>
</ul>
</div>
</div>
</div>
</div>
<?php require'./html/footer.html';?>
login.html
<?php require'./html/loginhead.html';?>
<div>
<h3 class="content_tab_title">登錄</h3>
<form action="#" method="post" name="example" class="content_denglu" id="form">
<table class="content_denglulist">
<tr>
<td class="left">姓名<span class="red">*</span></td>
<td><input type="text" name="name" class="txt01" id="username" /></td>
</tr>
<tr>
<td class="left">密碼<span class="red">*</span></td>
<td><input type="password" name="password" class="txt02" id="password" /></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" value="提交" class="tabbtn" /></td>
</tr>
</table>
</form>
</div>
</body>
</html>
register.html
<?php require'./html/loginhead.html';?>
<div>
<h3 class="content_tab_title">注冊</h3>
<form action="#" method="post" name="example" class="content_tab" id="form">
<table class="content_tablist">
<tr>
<td class="left">姓名<span class="red">*</span></td>
<td><input type="text" class="txt01" id="username" name="name" /></td>
</tr>
<tr>
<td class="left">密碼<span class="red">*</span></td>
<td><input type="text" class="txt02" name="password" id="password" /></td>
</tr>
<tr>
<td class="left">確認(rèn)密碼<span class="red">*</span></td>
<td><input type="text" class="txt02" id="password2" /></td>
</tr>
<tr>
<td class="left">性別<span class="red">*</span></td>
<td>
<label for="boy"><input type="radio" name="sex" id="boy" />男</label>
<label for="girl"><input type="radio" name="sex" id="girl" />女</label>
</td>
</tr>
<tr>
<td class="left">郵箱<span class="red">*</span></td>
<td><input type="text" class="txt03" name="email" /></td>
</tr>
<tr>
<td class="left">意向課程<span class="red">*</span></td>
<td>
<select class="course" name="course">
<option>手繪基礎(chǔ)班</option>
<option selected="selected">手繪進(jìn)階班</option>
<option>手繪就業(yè)班</option>
</select>
</td>
</tr>
<tr>
<td class="left">了解渠道<span class="red">*</span></td>
<td>
<label for="baidu"><input type="checkbox" id="baidu" name="channel[]" value="baidu" />baidu</label>
<label for="itcast"><input type="checkbox" id="itcast" name="channel[]" value="小繪老學(xué)" />小繪老學(xué)員</label>
<label for="friend"><input type="checkbox" id="friend" name="channel[]" value="朋友推薦" />朋友推薦</label>
<label for="csdn"><input type="checkbox" id="csdn" name="channel[]" value="CSDN網(wǎng)站" />CSDN網(wǎng)站</label>
<label for="video"><input type="checkbox" id="video" name="channel[]" value="視頻教程" />視頻教程</label>
<label for="other"><input type="checkbox" id="other" name="channel[]" value="其他" />其他</label>
</td>
</tr>
<tr>
<td class="left">留言</td>
<td><textarea cols="50" rows="5" class="message" name="message">請簡述您有沒有繪畫基礎(chǔ),以及為什么選擇學(xué)校手繪?</textarea></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" value="提交" class="tabbtn" /></td>
</tr>
</table>
</form>
</div>
<script type="text/javascript" src="./javascript/register.js"></script>
</body>
</html>
- 配置mysql數(shù)據(jù)庫
登錄phpMyAdmin
新建itcast數(shù)據(jù)庫和user表
- 部署項(xiàng)目
完成以后幾步后,把項(xiàng)目部署到phpstudy上,即可打開網(wǎng)站瀏覽效果。phpstudy的使用可見我另一篇fastadmin的安裝過程。文章來源:http://www.zghlxwxcb.cn/news/detail-476970.html
結(jié)語
??如果此文對你有幫助的話,歡迎??關(guān)注、??點(diǎn)贊、?收藏、??評論,支持一下博主~文章來源地址http://www.zghlxwxcb.cn/news/detail-476970.html
到了這里,關(guān)于php小項(xiàng)目-登錄和注冊的實(shí)現(xiàn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!