您的位置:首页 > 编程语言 > PHP开发

博客程序开发历程【2】-[会员系统-会员注册]{附源码}

2014-07-22 20:23 615 查看
会员数据表

sql

CREATE DATABASE IF NOT EXISTS blog;
USE blog;
CREATE TABLE members(
id          INTEGER UNSIGNED   NOT NULL AUTO_INCREMENT,
username    VARCHAR(20)        NOT NULL,
email       VARCHAR(100)       NOT NULL,
password    VARCHAR(32)        NOT NULL,
isactivate  tinyint(1)         DEFAULT FALSE,
rank        tinyint(1)         DEFAULT 3,
date        TIMESTAMP          DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id)
) ENGINE=MyISAM DEFAULT CHARACTER SET utf8
COLLATE utf8_general_ci AUTO_INCREMENT=0;


html代码

html_login_fns.php

<?php
function do_html_header($title,$css){

?>

<!DOCTYPE HTML>
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="html/<?php echo $css?>.css" />

<title><?php echo $title ?></title>
</head>

<body>
<?php

}

function do_html_footer() {

?>
</body>
</html>
<?php
}
function display_registration_form() {
?>
<div class="wrap">
<form action="" method="post">
<p>
<input class="inputtext" type="text" name="username" placeholder="会员帐号"
autofocus required>
</p>
<p>
<input class="inputtext" id="inputtext2" type="password" name="password" placeholder="密码"
autofocus required>
</p>
<p>
<input class="inputtext" type="text" name="email" placeholder="邮箱"
required>
</p>
<p id="sbp">
<input class="button" type="submit" name="submit" value="注册">
</p>
<p>
<a href="?file=member&action=login">
已有账号,请登录
</a>
<a href="?action=index">
跳过,进入首页
</a>
</p>
</form>
</div>
<?php
}
?>


login.css

body {
margin:0;
padding:0;
background:url(images/bg03.png);
background-size:cover;
}

a {
font-size:12px;
text-decoration:none;
color:grey;
margin-left:53px;
}

p{
margin:0;
}

span {
font-size:12px;
}

.wrap {
margin:200px auto;
padding:30px;
width:320px;
overflow:hidden;
float:none;
background:#FFF;
filter:alpha(opacity=70);
-moz-opacity:0.7;
-khtml-opacity: 0.7;
opacity: 0.7;
}

.inputtext {
width:303px;
height:30px;
font-size:16px;
border:solid 1px grey;
}

#inputtext1 {
border-bottom:none;
}

#inputtext2 {
border-top:none;
border-bottom:none;
}

#sbp{
margin-top:12px;
}

.button {
width:305px;
height:30px;
border:none;
color:#FFF;
background:#91C520;
font-size:14px;
font-weight:bold;
}

.button:hover{
cursor:pointer;
background:#AED505;
}

#fpwd{
background:none;
}


register.php

<?php
do_html_header("注册","login");
display_registration_form();
do_html_footer();

if (isset($_POST['submit'])){ //判断是否提交
$username=str_replace(" ", "" ,$_POST['username']); //删除空格
$password=md5(str_replace(" ", "",$_POST['password'])); //删除空格、加密
$email=str_replace(" ", "" ,$_POST['email']); //删除空格

if(!valid_name($username)){  //验证账号是否合法
exit ('<script language="javascript">alert("用户名不正确。")</script>');
}

elseif (!valid_email($email)){
exit ('<script language="javascript">alert("邮箱不正确。")</script>');
}

else {
register($username,$password,$email); //验证登录
}
}
?>


member_fns.php

<?php
/**
*
* 会员函数文件
* 2014-7-6
*
*/

function register($username,$password,$email){
//连接数据库
$dsn='mysql:host='.DB_HOST.';'.'dbname='.DB_NAME;
$pdo=new PDO($dsn,DB_USER,DB_PASSWORD);

//验证用户名是否唯一
$sql="SELECT count(*) FROM members WHERE username='$username'";
$pdo->query('set names utf8');
$query=$pdo->query($sql);
$row=$query->fetch();
print_r($row);
if($row[0]){
exit ('<script language="javascript">alert("用户名已存在。")</script>');
}

//验证邮箱是否唯一
$sql="SELECT count(*) FROM members WHERE email='$email'";
$pdo->query('set names utf8');
$query=$pdo->query($sql);
$row=$query->fetch();
if($row[0]){
exit ('<script language="javascript">alert("该邮箱已被使用。")</script>');
}

$sql="INSERT INTO members (username,email,password) VALUES ('$username','$email','$password')";

if($pdo->query($sql)){
header('Location: ?file=member&action=login');
}
else {
return true;
}
}
?>


fns.php

<?php
//验证账号是否合法
function valid_name($name){
if (preg_match('/^[a-z\d_]{4,20}$/i', $name)){
return true;
} else {
return false;
}
}

//验证邮箱是否合法
function valid_email($address) {
// check an email address is possibly valid
if (preg_match('/^([0-9A-Za-z\\-_\\.]+)@([0-9a-z]+\\.[a-z]{2,3}(\\.[a-z]{2})?)$/i', $address)) {
return true;
} else {
return false;
}
}
?>


源码下载地址:http://pan.baidu.com/disk/home?fr=ibaidu
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐