PHP實(shí)現(xiàn)簡單注冊(cè)登錄系統(tǒng)
本文實(shí)例為大家分享了PHP實(shí)現(xiàn)簡單注冊(cè)登錄系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
目錄結(jié)構(gòu)如下,其中function文件夾下包含兩個(gè)函數(shù)文件,uploads文件夾用于存放上傳的文件。

注:博主使用的是php5,使用php7的小伙伴運(yùn)行報(bào)錯(cuò)的話有一部分原因是新的語法造成的,修改成新語法就可以了
html頁面
登錄頁面
index.html
<form action="login_process.php" method="POST"> 登錄 <input type="text" name="userName" size="20" maxlength="15" placeholder="請(qǐng)?zhí)顚懹脩裘坝蛎?> <br> 注冊(cè) <input type="password" name="password" size="20" maxlength="15"> <br> <input type="submit" value="登錄"> <input type="button" onclick="window.location.href='register.html'" value="注冊(cè)"> </form>
注冊(cè)頁面
register.html
<h2>用戶注冊(cè)登錄系統(tǒng)</h2> <hr> <form action="register.php" method="POST" enctype="multipart/form-data"> 用戶名: <input type="text" name="userName" size="20" maxlength="15" placeholder="必須填寫用戶名"> @ <select name="domain" id=""> <option value="@163.com" selected>163.com</option> <option value="@126.com">126.com</option> </select> <br> 登錄密碼: <input type="password" name="password" size="20" maxlength="15"> <br> 確認(rèn)密碼: <input type="password" name="confirmPassword" size="20" maxlength="15"> <br> 選擇性別: <input type="radio" name="sex" value="male" checked>男 <input type="radio" name="sex" value="female">女 <br> 個(gè)人愛好: <input name="interests[]" type="checkbox" value="music">音樂 <input name="interests[]" type="checkbox" value="game">游戲 <input name="interests[]" type="checkbox" value="film">電影 <br> 個(gè)人相片 <input type="hidden" name="MAX_FILE_SIZE" value="1024"> <input type="file" name="myPicture" size="25" maxlength="100"> <br> 備注信息: <textarea name="remark" cols="30" rows="4" placeholder="請(qǐng)?zhí)顚憘渥⑿畔?></textarea> <br> <input type="submit" name="submit" value="注冊(cè)"> <input type="reset" name="cancel" value="重填"> </form>
功能實(shí)現(xiàn)文件
實(shí)現(xiàn)登錄功能
login_process.php
<?php
include_once("function/database.php");
// $userName = $_POST['userName'];
// $password = $_POST['password'];
$userName = addslashes($_POST['userName']);
$password = addslashes($_POST['password']);
getConnect();
$loginSQL = "select * from users where userName='$userName' and password='$password'";
echo $loginSQL;
$resultLogin = mysql_query($loginSQL);
if (mysql_num_rows($resultLogin) > 0) {
echo "登錄成功";
} else {
echo "登錄失敗";
}
closeConnect();
?>
實(shí)現(xiàn)注冊(cè)功能
register.php
<?php
include_once("function/fileSystem.php");
include_once("function/database.php");
if (empty($_POST)) {
exit("您提交的表單數(shù)據(jù)超過post_max_size! <br>");
}
// 判斷輸入密碼與確認(rèn)密碼是否相同
$password = $_POST['password'];
$confirmPassword = $_POST['confirmPassword'];
if ($password != $confirmPassword) {
exit("輸入的密碼與確認(rèn)密碼不相等!");
}
$userName = $_POST['userName'];
$domain = $_POST['domain'];
$userName = $userName . $domain;
// 判斷用戶名是否重復(fù)
$userNameSQL = "select * from users where userName = '$userName'";
getConnect();
$resultSet = mysql_query($userNameSQL);
if (mysql_num_rows($resultSet) > 0) {
exit("用戶名已被占用,請(qǐng)更換其他用戶名");
}
$sex = $_POST['sex'];
if (empty($_POST['interests'])) {
$interests = "";
} else {
$interests = implode(";", $_POST['interests']);
}
$remark = $_POST['remark'];
$myPictureName = $_FILES['myPicture']['name'];
$registerSQL = "insert into users values(null, '$userName', '$password', '$sex', '$interests', '$myPictureName', '$remark')";
$message = upload($_FILES['myPicture'], "uploads");
if ($message == "上傳成功" || $message == "沒有上傳") {
mysql_query($registerSQL);
$userID = mysql_insert_id();
echo "注冊(cè)成功<br>";
} else {
exit($message);
}
$userSQL = "select * from users where user_id = '$userID'";
$userResult = mysql_query($userSQL);
if ($user = mysql_fetch_array($userResult)) {
echo "您的注冊(cè)用戶名為:" . $user['userName'];
} else {
exit("用戶注冊(cè)失?。?);
}
closeConnect();
函數(shù)文件(function文件夾)
實(shí)現(xiàn)數(shù)據(jù)庫連接與關(guān)閉的函數(shù)
database.php
<?php
$databaseConnection = null;
function getConnect() {
$hosthome = "localhost";
$database = "register";
$userName = "root";
$password = "123456";
global $databaseConnection;
$databaseConnection = @mysql_connect($hosthome, $userName, $password) or die (mysql_error());
mysql_query("set names gbk");
@mysql_select_db($database, $databaseConnection) or die (mysql_error());
}
function closeConnect() {
global $databaseConnection;
if ($databaseConnection) {
@mysql_close($databaseConnection) or die (mysql_error());
}
}
?>
實(shí)現(xiàn)文件上傳的函數(shù)
fileSystem.php
<?php
function upload($file, $filePath) {
$error = $file['error'];
switch ($error) {
case 0:
$fileName = $file['name'];
$fileTemp = $file['tmp_name'];
$destination = $filePath . "/" . $fileName;
move_uploaded_file($fileTemp, $destination);
return "上傳成功";
case 1:
return "上傳超過upload_max_filesize";
case 2:
return "上傳文件超過form的MAX_FILE_SIZE";
case 3:
return "附件部分上傳";
case 4:
return "沒有上傳";
}
}
?>
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
異步加載技術(shù)實(shí)現(xiàn)當(dāng)滾動(dòng)條到最底部的瀑布流效果
當(dāng)滾動(dòng)條到最底部的時(shí)候觸發(fā)一個(gè)事件,這個(gè)事件寫入$.get()事件,實(shí)現(xiàn)瀑布流效果,下面試具體的實(shí)現(xiàn)2014-09-09
使用php 獲取時(shí)間今天明天昨天時(shí)間戳的詳解
本篇文章是對(duì)用php獲取時(shí)間今天明天昨天時(shí)間戳的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06
linux下使用crontab實(shí)現(xiàn)定時(shí)PHP計(jì)劃任務(wù)失敗的原因分析
這篇文章主要介紹了linux下使用crontab實(shí)現(xiàn)定時(shí)PHP計(jì)劃任務(wù)失敗的原因分析,需要的朋友可以參考下2014-07-07
PHP5.3以上版本安裝ZendOptimizer擴(kuò)展
這篇文章主要介紹了PHP5.3以上版本安裝ZendOptimizer擴(kuò)展的方法,十分細(xì)致,推薦給有需要的小伙伴參考下。2015-03-03
PHP實(shí)現(xiàn)QQ空間自動(dòng)回復(fù)說說的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)QQ空間自動(dòng)回復(fù)說說的方法,涉及php基于curl調(diào)用自動(dòng)回復(fù)接口的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-12-12
swfupload 多文件上傳實(shí)現(xiàn)代碼
swfupload 采用flash+ajax方式上傳文件2008-08-08

