序:

  此实验的功能是只有已经登陆或者已经注册的用户才有发表留言的资格,否则只能够浏览留言。

1.  主要文件:

4_2login.html// 登陆的主页面

 4_2login.php  //处理登陆信息,验证用户是否登陆正确。

4_2register.html  //注册的页面

4_2register.php  //处理注册的程序。

coonectfig.php  //配置信息。

4_1.php    //用户留言信息。

2.sql 在已有的数据库里创建user表,id,username,password三个字段

  create table username(
id int() not null auto_increment,
username varchar(),
password varchar(),
primary key(id)
);

3 connectfig.php 数据库配置文件

 <?php
/*
*
* @Authors peng--jun
* @Email 1098325951@qq.com
* @Date 2015-05-17 10:53:44
* @Link http://www.cnblogs.com/xs-yqz/
* @version $Id$
==========================================
*/
header("Content-type: text/html; charset=UTF-8");
$DBHOST = 'localhost';
$DBNAME = 'liuyanban';
$USER = 'root';
$PWD= '';
@$conn = mysql_connect($DBHOST,$USER,$PWD) or die ( "连接数据库失败" );
mysql_select_db ( $DBNAME, $conn ) or die ( "失败" );
mysql_query ( "set names utf8;" );//设置字符集编码
?>

4  4_2register.html文件信息

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>用户登陆留言板</title>
<link rel="stylesheet" type="text/css" href="css/4_1.css">
<script type="text/javascript">
windoe.onload=function(){
var password = document.getElementById('pwd');
var password1 = document.getElementById('pwd1');
if (!(password.value==password1.value)) {
alert("密码前后不一致");
return false;
}
}
</script>
</head>
<body>
<div id="list">
<form action="4_2register.php" method="post" name="login" onsubmit="check()">
姓 &nbsp;名:<input type="text" name="user">
<p></p>
密 &nbsp;码:<input type="password" name="pwd" id="pwd">
<p></p>
确认密码:<input type="password" name="pwd1" id="pwd1">
<p></p>
<input type="submit" name="submit" value="提交" class="button">
<a href="4_2register.html">注册</a>
<a href="4_2login.html">登陆</a>
</form>
</div>
</body>
</html>

5 . 4_2register.php处理注册页面的信息

 <?php
/*
*
* @Authors peng--jun
* @Email 1098325951@qq.com
* @Date 2015-05-17 14:58:05
* @Link http://www.cnblogs.com/xs-yqz/
* @version $Id$
==========================================
*/
error_reporting(E_ALL ^ E_NOTICE);
header("Content-type: text/html; charset=UTF-8");
SESSION_START();
include 'include/connectfig.php';//引入头文件
if (isset($_POST['submit'])){
//sql语句
$username = $_POST['user'];
$pwd = $_POST['pwd'];
$q="INSERT INTO user(id,user,pwd)VALUES('','$username','$pwd')";//注意:字段需要打单引号
//执行SQL语句
if(mysql_query($q)){
$_SESSION['logined']=; //判断是否已经登录的依据。
$_SESSION['user']=$username; //记录当前登录用户。
echo "
<script>
document.write('注册成功,页面正在为你跳转');
setTimeout(function(){window.location.href='4_1.php';},);
</script> ";//如果注册成功 使用js 1秒后跳转到界面;
}else{
echo "<script>
           document.write('注册失败');
setTimeout(function(){window.location.href='4_2register.html';},);
</script>";//注册失败,1s种返回到注册页面
};
}
mysql_close($conn);//关闭数据库
?>

6  4_2login.html  //登陆页面

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>用户登陆留言板</title>
<link rel="stylesheet" type="text/css" href="css/4_1.css">
</head>
<body>
<div id="list"> <form action="4_2login.php" method="post" name="login">
姓 &nbsp;名:<input type="text" name="user">
<p></p>
密 &nbsp;码:<input type="password" name="pwd">
<p></p>
<input type="submit" name="submit" value="提交" class="button">
<a href="4_2register.html">注册</a>
<a href="4_2login.html">登陆</a>
</form> </div>
</body>
</html>

7  4_2login.php  //登陆页面的处理

 <?php
/*
*
* @Authors peng--jun
* @Email 1098325951@qq.com
* @Date 2015-05-17 14:58:05
* @Link http://www.cnblogs.com/xs-yqz/
* @version $Id$
==========================================
*/
error_reporting(E_ALL ^ E_NOTICE);
header("Content-type: text/html; charset=UTF-8");
session_start();
include 'include/connectfig.php';//引入头文件
if (!isset($_POST["submit"])){
exit("错误执行");
}
$username = $_POST['user'];
$pwd = $_POST['pwd'];
if ($username && $pwd){
$sql = "SELECT * FROM user WHERE user = '$username' AND pwd = '$pwd'";//检测数据库是否有对应的username和password的sql
$result = mysql_query($sql);//执行sql语句
$rows = mysql_num_rows($result);//返回一个数值
if($rows){//0 false 1 true
$_SESSION['logined']=; //判断是否已经登录的依据。
$_SESSION['user']=$username; //记录当前登录用户。
header("refresh:0;url=4_1.php");//如果成功跳转至4_1.php页面
exit;//跳转成功之后就关闭此页面。
}else{
echo "用户名或密码错误,将返回登陆界面";
echo "
<script>
setTimeout(function(){window.location.href='4_2login.html';},);
</script> ";//如果错误使用js 1秒后跳转到登录页面重试;
}
}
?>

8 留言板页面

 <?php
/*
*
* @Authors peng--jun
* @Email 1098325951@qq.com
* @Date 2015-05-17 10:51:56
* @Link http://www.cnblogs.com/xs-yqz/
* @version $Id$
=====================================================
*/ error_reporting(E_ALL ^ E_NOTICE);
include 'include/connectfig.php';//引入头文件
session_start();
//检测是否登录
if(isset($_SESSION['logined']) && $_SESSION['logined']===true){
//$_SESSION['logined']有设置,并且值为真,表示已经登录
//echo "当前登录用户是: ".$_SESSION['user'];
}
if($_POST['submit']){
/*$user=$_POST['user'];
if ($user=='') {
echo "<script>alert("你没有登陆,请先登陆!")</script>";
}*/
//sql语句
$sql="insert into message(id,user,title,content,lastdate)values('','$_SESSION[user]','$_POST[title]','$_POST[content]',now())";
//执行sql语句
mysql_query($sql);
}
?> <!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>简易留言板</title>
<link rel="stylesheet" type="text/css" href="css/4_1.css">
</head> <body>
<div id="div1"> <form method="post" id="form" name="myform" action="" onsubmit="Check();">
<!-- 用户:<input type="text" size="" name="user"><br> -->
标题:<input type="text" name="title"><br>
内容:
<textarea name="content" cols="" rows="" name="content"></textarea><br>
<input type="submit" name="submit" value="发布留言" />
<A href="4_2login.html">返回登陆</A>
</form> <table cellpadding="" cellspacing="" >
<?php
$sql1 = "select * from message order by id desc";//按照id倒叙排列
$query = mysql_query($sql1);
while ($rows = mysql_fetch_array($query)) {
?>
<tr bgcolor="#eff3ff">
<td><b>用户:</b><?php echo $rows['user'];?> <b>标题:</b><?php echo $rows['title'] ;?> <b>发布时间:</b><?=$rows['lastdate'];?>
</td>
</tr>
<tr bgColor="#ffffff">
<td><b>内容:</b><?php echo $rows['content'];?></td>
</tr>
<?php
}
?>
</table>
</div>
<script type="text/javascript">
/*function Check() {
if (mysorm.user.value=="") {
alert("用户名都不填写,你也真够懒的");
myform.user.focus();
return false;
};
if (myform.title.value.length<2) {
alert("标题不能少于两个字符");
myform.title.focus();
return false;
};
if (myform.content.value="") {
alert("必须要填写留言信息");
myform.content.focus();
return false;
};
}*/
</script>
</body>
</html>

OK 至此表示所有的页面程序代码就这样愉快的写完了,当然样式方面没有做多少的渲染。今天奖励自己一个鸡蛋。

公选网站作业4_2.php的更多相关文章

  1. (详细)Eclips+jsp+servlet+mysql+登录实例+源代码

    欢迎任何形式的转载,但请务必注明出处. 该教程较全,从软件的安装以及相关的环境配置我都放置了相关教程的链接,读者可直接点击进入.自己写电商网站作业时查找了很多资料,但都不是很全,所以趁着寒假写了这份教 ...

  2. 【转】我们为什么要使用 Markdown

    目录 从前码字时我们面临着什么困境 标记语言显神威 到底什么是 Markdown 所以为什么我们要使用 Markdown Markdown 简明语法 段落和换行 标题 区块引用 列表 强调 代码标识和 ...

  3. ASP.NET动态网站制作(18)-- jq作业讲解及知识补充

    前言:这节课主要讲解js及jq作业,并在作业讲解完后补充关于jQuery的一些知识点. 内容: 1.作业讲解:计算器那一块考虑的各种情况还不算完善,只实现了基本的功能,还需多多练习使用jQuery. ...

  4. 大作业:开发一个精美的 Web 网站

    大作业:开发一个精美的 Web 网站 实验目的: 掌握一个完整精美网页开发的基本方法 实验要求: 1.开发一个 Web 站点,至少有 3 个以上的页面: 2.采用 CSS 和 HTML 文件分开方法: ...

  5. 关于java' web杂谈(其实是课后作业1)1 网站系统开发需要掌握的技术

    1 网站系统开发需要掌握的技术:(借鉴度娘)https://zhidao.baidu.com/question/1701850648247880220.html 需要掌握的有:Java(JavaEE) ...

  6. 团队博客作业Week4 --- 学霸网站--NABC

    1.需求(Need) 伴随着经济的发展,科学技术取得了飞速的发展,互联网在各行各业的发展中取得了广泛的应用.随着这些事物的发展,我们每个人都会接触到相当庞大的数据.如何在这些数据中找到自己需要的,如何 ...

  7. 软工作业-14组铁大FaceBook网站使用体验

    铁大facebook是面向铁道大学学生的一个空间网站,空间界面十分朴素,灰色的色调.基本可以满足日常的发动态需求,但也存在一些问题: 比如发动态不是很方便,必须要进入到某一个空间才能发动态 .就有一些 ...

  8. 17级-车辆工程-周金霖 计算机作业 MP4音乐网站

  9. [css]网站骨架布局作业

    实现效果图: 代码实现 第一次写的时候不知道如何下手, 后来摸清规律了,由大到小. 由全局到局部 第一次还遇到区块命名问题, 和哪个该怎么划分问题 第一次还遇到由于划分不规整,所以有些代码没达到预期的 ...

随机推荐

  1. Mock, 让你的开发脱离接口

    在前后台共同进行一个项目的时候常会遇到一种情景, 后台定义好接口,前端按照接口进行开发, 当前端开发完成后台接口却还没有开发完成, 这个时候要进行接口测试, 只能等后台开发完成才能测试, 在这中间浪费 ...

  2. php 实现二进制加法运算

    php实现二进制加法: 思路:没有工作中应用过此场景,但十进制的加法还是经常做的,能不能用十进制加法变相实现呢? 答案是可以的,并且php也提供进制间转换的函数,我的实现使用了 bindec():二进 ...

  3. send js object to webapi or mvc

    [HttpPost] public HttpResponseMessage AddInfo(UserInfoEntity userInfo) { return Request.CreateRespon ...

  4. Spring-----Assert断言工具类

    转载自:http://blog.csdn.net/hekewangzi/article/details/51956577

  5. Spring 整合hibernante 错误java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener

    1.将所需的jar包全部拷贝到WEB-INF/lib下,再重新启动tomcat便能顺利通过了.参考http://blessht.iteye.com/blog/1104450 最佳答案   spring ...

  6. EC读书笔记系列之11:条款20、21

    条款20 宁以pass-by-reference-to-const替换pass-by-value 记住: ★尽量以pass-by-reference-to-const替换pass-by-value.前 ...

  7. JAVA日期字符串转化,日期加减

    SimpleDateFormat函数语法:  G 年代标志符  y 年  M 月  d 日  h 时 在上午或下午 (1~12)  H 时 在一天中 (0~23)  m 分  s 秒  S 毫秒  E ...

  8. Spring中ref local与ref bean区别

    今天在做SSH框架Demo实例时,在ApplicationResources.properties文件时对<ref bean>与<ref local>感到不解,经查找资料才弄明 ...

  9. C 中注意的小问题

    输入:char ch[100],gets(ch); scanf("%d",&in); char ch,ch=getchar(); VC:  所有变量声明放在所有操作前面: ...

  10. windbg命令学习2

    一.windbg查看内存命令: 当我们在调试器中分析问题时, 经常需要查看不同内存块的内容以分析产生的原因, 并且在随后验证所做出的假设是否正确. 由于各个对象的状态都是保存在内存中的, 因此内存的内 ...