上篇文章给大家介绍了《如何用PHP解决高并发问题?(附源码)》,本文继续给大家介绍如何用PHP实现简单注册登录系统 ,一起研究吧!!!
目录结构如下,其中function文件夹下包含两个函数文件,uploads文件夹用于存放上传的文件。
注:博主使用的是php5,使用php7的小伙伴运行报错的话有一部分原因是新的语法造成的,修改成新语法就可以了
登录页面
index.html
<form action="login_process.php" method="POST"> 登录 <input type="text" name="userName" size="20" maxlength="15" placeholder="请填写用户名及域名"> <br> 注册 <input type="password" name="password" size="20" maxlength="15"> <br> <input type="submit" value="登录"> <input type="button" onclick="window.location.href='register.html'" value="注册"> </form>
注册页面
register.html
<h2>用户注册登录系统</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> 确认密码: <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> 个人爱好: <input name="interests[]" type="checkbox" value="music">音乐 <input name="interests[]" type="checkbox" value="game">游戏 <input name="interests[]" type="checkbox" value="film">电影 <br> 个人相片 <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="请填写备注信息"></textarea> <br> <input type="submit" name="submit" value="注册"> <input type="reset" name="cancel" value="重填"> </form>
实现登录功能
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(); ?>
实现注册功能
register.php
<?php include_once("function/fileSystem.php"); include_once("function/database.php"); if (empty($_POST)) { exit("您提交的表单数据超过post_max_size! <br>"); } // 判断输入密码与确认密码是否相同 $password = $_POST['password']; $confirmPassword = $_POST['confirmPassword']; if ($password != $confirmPassword) { exit("输入的密码与确认密码不相等!"); } $userName = $_POST['userName']; $domain = $_POST['domain']; $userName = $userName . $domain; // 判断用户名是否重复 $userNameSQL = "select * from users where userName = '$userName'"; getConnect(); $resultSet = mysql_query($userNameSQL); if (mysql_num_rows($resultSet) > 0) { exit("用户名已被占用,请更换其他用户名"); } $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 "注册成功<br>"; } else { exit($message); } $userSQL = "select * from users where user_id = '$userID'"; $userResult = mysql_query($userSQL); if ($user = mysql_fetch_array($userResult)) { echo "您的注册用户名为:" . $user['userName']; } else { exit("用户注册失败!"); } closeConnect();
实现数据库连接与关闭的函数
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()); } } ?>
实现文件上传的函数
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 "没有上传"; } } ?>
推荐学习:《PHP视频教程》
Atas ialah kandungan terperinci 如何用PHP实现简单注册登录系统(附源码). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!