资源描述
题目: 网站设计
网站设计目的
本平台运用当前比较广泛PHP+MYSQL数据库架构实现,此系统分为前台管理和后台管理。前台管理是和谐操作界面,供顾客浏览、查询使用。后台管理是提供应管理员.
设计技术比较
合理选取开发技术,对于网站开发完毕状况有着非常重要影响。要开发一种网站,一方面要选取一种动态网页开发技术。当前比较流行动态网页开发技术有ASP、JSP、PHP。它们特性比较如表3-1所示。
技术名称
ASP
JSP
PHP
对数据库支持
好
好
好
性能
较差
较好
好
使用平台
Win
Linux/Win
Linus/Win
安全性
不好
好
好
成本
较高
较高
低
跨平台
不好
好
好
这三种都是在老式HTML代码中,运用HTML标签扩展,构成页面。不难看出,php综合实力是最强,特别是在安全性和跨平台性两个方面,比其她两种技术都要好,因而,最后咱们选取php技术作为动态网页开发技术。
需要完毕某些详细功能:
顾客管理: 可以完毕顾客基本信息录入注册和顾客基本信息修改。
管理员管理: 可以完毕管理员对网站商品信息管理(商品添加、商品信息修改
平台功能模块设计
购物网站
顾客管理
网站布局
管理进入
商品添加
商品分类
顾客注册
顾客登录
注册功能流程
注册流程示意图如图
注册入口
必选项为空
顾客名有效?
2次密码一致?
密码长度符合规定?
E-mail地址有效效?
其她信息有效
注册成功
顾客登录流程
顾客登录,一方面要有一种提供顾客登录表单。
一方面,顾客要有一种顾客名和密码。同步对密码也规定保密,将密码加密后再存入数据库。登陆流程示意图如图:
登录入口
获得顾客名和密码
将use存入session中
查询顾客与否存在
核对密码与否对的
登录成功
是
是
否
否
商品信息表
顾客信息表
商品分类
数据库连接代:
<?php
error_reporting(0);
session_start();
$server="localhost";
$username="root";
$password="123";
$database="shangcheng";
$conn=mysql_connect($server,$username,$password)
or die("could notconnectmysql");
mysql_query("set names GBK");
mysql_select_db($database,$conn)
or die("could not open database");
// mysql_close($conn);
$_SESSION['con']=$conn;
if(date_default_timezone_get() != "1Asia/Shanghai") date_default_timezone_set("Asia/Shanghai");
?>
顾客登陆模块实现
顾客登陆模块是防止非法顾客登陆第一道防线,通过它可以保护后台数据库安全性,顾客一方面要进入就是身份验证界面,只有在密码对的状况下才干进行后来操作,如果输入密码不对的,则不能登录。
主页面图片:
主页面提供了顾客登陆和注册以及某些商品展示,顾客注册账号后可以登陆进入。登陆后可以点击信息修改按钮来修改个人注册信息。浏览完网页后可以点击注销登陆按钮退出个人登陆。网页中商品图片和左侧商品分类信息是商品链接,点击即可看到该商品详细信息。
顾客注册图片:
顾客登录注销:
登陆详细代码如下图所示:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
<title>User Login</title>
<style type="text/css">
.alert {color:red}
.textinput {width:160px}
.btn {width:80px}
table {border:3px double;background-color:#eeeeee;}
</style>
<script language="javascript">
function doCheck() {
if (document.frmLogin.username.value == "") {
alert('请输入你顾客名!');
return false;
}
if (document.frmLogin.password.value == "") {
alert('请输入你密码!');
return false;
}
}
</script>
</head>
<body>
<form name="frmLogin" method="post" action="login_do.php" onSubmit="return doCheck();">
<table border="0" cellpadding="8" width="350" align="center">
<tr>
<td align="center" class="alert">顾客名:</td>
<td><input name="username" type="text" id="username" class="textinput" /></td>
</tr>
<tr><td align="center" class="alert">密码:</td>
<td>
<input name="password" type="password" id="password" class="textinput" />
</td>
</tr>
<tr><td colspan="2" align="center">
<input type="submit" class="btn" value="登录">  ;
<input type="reset" class="btn" value="重置">  ;
<input type="button" class="btn" onClick="location.href = 'index.php';" value="返回">
</td>
</tr>
</form>
</body>
</html
<?php
include 'config.php';
$UserName = trim($_POST["username"]);
$Password = $_POST["password"];//密码
$password = md5($password);
if ($UserName <> "") {
// 查询数据库,看顾客名及密码与否对的
$query = "select * from UserInf where f_UserName='$UserName' and f_password='$Password'";
$result = mysql_query($query);
$num = mysql_num_rows($result);
if ($num > 0) {
$row = mysql_fetch_assoc($result);
$_SESSION['username'] = $row['f_UserName'];
$_SESSION['userclass'] = $row['f_class'];
$_SESSION['name']=$row['f_name'];
if ($_SESSION['userclass'] == 1) {
echo "<script>document.location.href='index1.php'</script>";
} else {
echo "<script>document.location.href='index.php'</script>";
}
}
else
echo "顾客名或密码不对的<script>document.location.href='login.php'</script>";
}
?>
修改顾客信息:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312">
<title>Registering form</title>
</head>
<?php
include 'config.php';
?>
<body>
<form name="frmRegister" method="post" action="register_do2.php">
<table width="330" border="0" align="center" cellpadding="5" bgcolor= "#eeeeee">
<tr>
<td width="40%">顾客名:</td>
<td>
<?php
echo $_SESSION['username']
?></td>
</tr>
<tr>
<td>密码:</td>
<td><input name="password" type="password" id="pwd"></td>
</tr>
<tr>
<td>重复密码:</td>
<td><input name="repeat_password" type="password" id="repeat_pwd"></td>
</tr>
<tr>
<td>姓名:</td>
<td><input name="name" type="text" id="name"></td>
</tr>
<tr>
<td>Email:</td>
<td><input name="email" type="text" id="email"></td>
</tr>
<tr>
<td colspan="2" align="center">
<input type="submit" name="submit" value="提交">
<input type="reset" name="reset" value="重置">
<input name="button" type="button" onClick="location.href = 'index2.php';" value="返回"/></td>
<td width="51"><label></label></td>
</tr>
</table>
</form>
</body>
</html>
<?php
//Session_start();
include 'config.php';
$UserName = $_SESSION['username'];//顾客名
$Password = $_POST["password"];//密码
$ConfirmPassword = $_POST["repeat_password"];//确认密码
$Email = $_POST["email"];//邮箱
$Name=$_POST['name'];
//判断顾客名函数
function Check_username($UserName) {//参数为顾客注册顾客名
//顾客名三个方面检查
//与否为空字符串检测长度检测
$Max_Strlen_UserName = 16;//顾客名最大长度
$Min_Strlen_UserName = 4;//顾客名最短长度
$UserNameChars = "^[A-Z a-z 0-9_-]";//字符串检测正则表达式
$UserNameGood = "顾客名检测对的";//定义返回字符串变量
if ($UserName == "") {
$UserNameGood = "顾客名不能为空";
return $UserNameGood;
}
if (!ereg("$UserNameChars",$UserName)) {//正则表达式匹配检查
$UserNameGood = "顾客名字符串检测不对的";
return $UserNameGood;
}
if (strlen($UserName) < $Min_Strlen_UserName || strlen($UserName) > $Max_Strlen_UserName) {
$UserNameGood = "顾客名字长度检测不对的";
return $UserNameGood;
}
return $UserNameGood;
}
//判断密码与否合法函数
function Check_Password($Password) {
//与否为空字符串检测长度检测
$Max_Strlen_Password = 16;//密码最大长度
$Min_Strlen_Password = 6;//密码最短长度
$PasswordChars = "^[A-Za-z0-9_-]";//密码字符串检测正则表达式
$PasswordGood = "密码检测对的";//定义返回字符串变量
if ($Password == "") {
$PasswordGood = "密码不能为空";
return $PasswordGood;
}
if (!ereg("$PasswordChars",$Password)) {
$PasswordGood = "密码字符串检测不对的";
return $PasswordGood;
}
if (strlen($Password) < $Min_Strlen_Password || strlen($Password) > $Max_Strlen_Password) {
$PasswordGood = "密码长度检测不对的";
return $PasswordGood;
}
return $PasswordGood;
}
//判断邮箱与否合法函数
function Check_Email($Email) {
$EmailChars = "^[_a-z0-9-]+(.[_a-z0-9-]+)*@[a-z0-9-]+(.[a-z0-9-]+)*$";//正则表达式判断与否是合法邮箱地址
$EmailGood = "邮箱检测对的";
if ($Email == "") {
$EmailGood = "邮箱不能为空";
return $EmailGood;
}
if (!ereg("$EmailChars",$Email)) {//正则表达式匹配检查
$EmailGood = "邮箱格式不对的";
return $EmailGood;
}
return $EmailGood;
}
//判断两次密码输入与否一致
function Check_ConfirmPassword($Password,$ConfirmPassword) {
$ConfirmPasswordGood = "两次密码输入一致";
if ($Password <> $ConfirmPassword) {
$ConfirmPasswordGood = "两次密码输入不一致";
return $ConfirmPasswordGood;
}
else
return $ConfirmPasswordGood;
}
//调用函数,检测顾客输入数据
$UserNameGood = Check_username($UserName);
$PasswordGood = Check_Password($Password);
$EmailGood = Check_Email($Email);
$ConfirmPasswordGood = Check_ConfirmPassword($Password,$ConfirmPassword);
$error = false;//定义变量判断注册数据与否浮现错误
if ($UserNameGood != "顾客名检测对的") {
$error = true;//变化error 值表达浮现了错误
echo $UserNameGood;//输出错误信息
echo "<br>";
}
if ($PasswordGood != "密码检测对的") {
$error = true;
echo $PasswordGood;
echo "<br>";
}
if ($EmailGood != "邮箱检测对的") {
$error = true;
echo $EmailGood;
echo "<br>";
}
if ($ConfirmPasswordGood != "两次密码输入一致") {
$error = true;
echo $ConfirmPasswordGood;
echo "<br>";
}
//判断数据库中顾客名和email 与否已经存在
$query = "select * from UserInf where f_UserName='$UserName' or f_email='$Email'";
$result = mysql_query($query);
$row = mysql_fetch_array($result);
$cunzai=false;
if ($row) {
if ($row["f_UserName"] == $UserName) {
$cunzai = true;
}
//$sql = "delete from UserInf where f_UserName='$UserName'";
//$result = mysql_query($sql);
}
//mysql_free_result($result);
//如果数据检测都合法,则将顾客资料写进数据库表
if($cunzai == true) { //$error==false 表达没有错误
$IP = $_SERVER["REMOTE_ADDR"];
$Datetime = date("Y-m-d G:i");//获取注册时间,也就是数据写入到顾客表时间
//$Datetime = date("d-m-y h:i:s");//获取注册时间,也就是数据写入到顾客表时间
$query1 = "update UserInf set f_password='".$Password."',f_name=".$Name.",f_email='".$Email."',f_class='3',f_loginIP='".$IP."' where f_UserName='".$UserName."'";
$result1 = mysql_query($query1);
echo "修改成功!";
if (isset($_SESSION['username'])) {
$_SESSION['username'] = "";
session_destroy();
}
echo "<script>document.location.assign='login.php'</script>";
}
?>
管理登陆添加商品,添加分类:
管理员可以通过主页面“管理进入”进入系统后台进行维护,点击之后,首要就是进行身份验证,输入对的帐号,密码之后,方能进入。
管理重要功能是商品信息管理,重要就是添加新商品,删除和修改已经添加商品。
总结
通过两个多星期努力之后,本次课程设计基本完毕,作为一种初学者难免有许多考虑不周全地方,如果没有导师细心辅导,以及同窗支持,想要完毕这个设计是难以想象。由于是第一次做网站,因此遇到了诸多问题, php基本语言不熟悉就是个很大难题,难度最大就是网站界面设计 。我参照了某些购物网站,然后请同窗帮我做了一某些网页主界面设计。
在这里一方面要感谢咱们敬爱邢教师,尽管课程设计学时很短,邢教师还是尽其所能给咱们解说更多关于网站设计知识,让咱们步入网站设计第一步有个良好开端。次要感谢我同窗对我无私协助,特别是在页面布局方面给了我很大协助,是我能顺利完毕设计。同步我对网站开发也有了诸多结识,对php以及mysql基本使用也有所理解。
附录
所有文献截图
所有程序代码如下:
zy.css
/* CSS Document */
body{
margin:0px;
padding:0px;
font-family:"宋体";
font-size:14px;
text-align:center;/*ie*/
}
a{
text-decoration:none;
}
a:hover{
position:relative;
top:2px;
left:2px;
color:#FF0;
}
a:link{
color:#00F;
}
a:visited{
color:#00F;
}
.zy{
margin-left:auto;
margin-right:auto;
width:980px;
padding:10px;
background-color:#CCCCCC;
}
.jt{
background-color:#FFF;
}
.shou{
height:20px;
text-align:left;
padding-top:8px;
padding-left:20px;
background-color:#00CCCC;
}
.biaoti{
height:150px;
}
.logo{
float:left;
width:200px;
height:150px;
background-color:#FFFFFF;
}
.btyou{
height:150px;
background-color:#FFFFFF;
}
.daohang{
height:20px;
padding-left:20px;
background-color:#66FFCC;
}
div.daohang ul{
list-style-type:none;
margin:0px;
padding:0px;
}
div.daohang ul li{
float:left;
width:50px;
}
.admin{
width:200px;
height:200px;
padding-left:20px;
text-align:left;
}
.list{
float:left;
width:150px;
background-color:#FFFFCC;
text-align:left;
padding-left:20px;
}
.good{
padding-top:50px;
padding-bottom:50px;
float:left;
margin-left:10px;
width:790px;
border:1px solid #CCC;
}
.bottom{
clear:both;
height:60px;
}
.fenge{
height:5px;
clear:both;
}
index.php
<?php include 'config.php';?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312" />
<link href="style/zy.css" type="text/css" rel="stylesheet"/>
<title>我商城</title>
</head>
<body>
<div class="zy">
<div class="ye">
<div class="jt">
<div class="shou">
<table border="0" >
<span class="STYLE6">欢迎来商城网!
<?php
if (isset($_SESSION['username'])&&$_SESSION['username']!="") {
echo $_SESSION['username'];
echo " <a href='tuichu.php'>注销登录</a> <a href='register2.php'>信息修改</a>";
}
else{
echo " <a href='login.php'>登录</a> <a href='register.php'>注册</a>";
echo " ".date("Y-m-d G:i");
}
?>
</span>
</table>
</div>
<?php include 'top.php ';?>
<div class="fenge"></div>
<?php include 'left.php';?>
<div class="fenge">
</div>
<?php include 'bottom.php';?>
</div>
</div>
</div>
</body>
</html>
index1.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
<html xmlns="">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312" />
<link href="style/zy.css" type="text/css" rel="stylesheet"/>
<title>我商城</title>
</head>
<?php include 'config.php';?>
<body>
<div class="zy">
<div class="ye">
<div class="jt">
<div class="shou">
<table border="0" >
<span class="STYLE6">欢迎来商城网!
<a href="tuichu.php">注销登录</a>
</span>
</table>
</div>
<?php include 'top.php ';?>
<div class="admin">
<ul>
<li><a href='newproduct.php'> 添加新商品</a></li><br/>
<li><a href='category.php'> 添加商品分类</a></li>
</ul>
</div>
</div>
</div>
</div>
</body>
</html>
index2.php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
<html xmlns="">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=gb2312" />
<link href="style/zy.css" type="text/css" rel="stylesheet"/
展开阅读全文