原理类似留言板;
1, 首先连接数据库mysql -u root -p111111 ,建立新的数据库 dbblog, ;create database dbblog;
2; 使用数据库dbblog, use dbblog
3; 在数据库dbblog下 新建表tbblog;主键自增型,表中 k-v 键值有:
create table tbblog(
id int primary key auto_increment, // id
title varchar(60), // 标题
name varchar(10), // 作者姓名
time varchar(10), // 时间
type varchar(10), // 文章分类
content varchar(1000) ); // 内容
4; list留言本列表界面,进行列表循环 foreach($list as $v){}, 让所有的文章显示在list界面,并用href链接进行具体id对应的详情界面跳转。
新建list.php
/*
文件名: list.php
作用: 从数据库中读取所有的留言
思路:
调用conn.php,
形成sql语句.
发送sql查询
查询显示
打印
*/
require('inc/conn.php');
require('inc/lib.php');
$sql = 'select * from msg';
$list = selAll($sql,$conn);
//print_r($list); 打印list列表内容
?>
/*html,css 省略*/
<body>
<div id="bt">
<div id="lb">
<ul>
<?php foreach($list as $v) { ?>
<li>留言标题:<a href="detail.php?id=<?php echo $v['id']; ?>"><?php echo $v['title']; ?></a></li>
<?php } ?>
</ul>
</div>
</div>
</body>
</html>
5, detail.php博客详情, 查看博客的详情界面
作用: 根据id=N,查询id=N的博客文章
部分代码如下:
require('inc/conn.php');
require('inc/lib.php');
$id = $_GET['id'] + 0;
$sql = "select * from tbblog where id = $id";
$info = selRow($sql,$conn);
// print_r($info); 打印id的博客内容,显示在html界面上
?>
/*... html ,css省略*/
<body>
<div id="bt">
<div id="lb">
<h1><?php echo $info['title']; ?></h1>
<p><?php echo $info['name']; ?></p>
<p><?php echo $info['time']; ?></p>
<p><?php echo $info['type']; ?></p>
<p><?php echo $info['content']; ?></p>
</div>
</div>
</body>
</html>
6; 在列表主页 应该有一个 博客的 “发布” 跳转按钮,点击跳转发布界面pub.html ;
pub.html 和 pub.php文件,进行文章的发布功能,先由pub.html 界面获得填写好的信息然后 相应跳转到php进行数据写入,检测写入成功或失败
部分代码:
在pub.html界面 对 提交信息进行一个监听并post数据到pub.php
<form οnsubmit="return chkmsg();" method="post" action="pub.php">
pub.html 中信息填写项的js验证
<script type="text/javascript"> function chkmsg() { var obj = document.getElementsByName('title')[0]; if(obj.value == '') { alert('标题不能为空'); return false; } obj = document.getElementsByName('username')[0]; if(obj.value == '') { alert('姓名不能为空'); return false; } obj = document.getElementsByName('content')[0]; if(obj.value == '') { alert('内容不能为空'); return false; } } </script>
在 文件pub.php 中:
<?php
/*
文件名:pub.php
作用: 接收新写的博客并入库,显示成功或失败 (只是一个显示发布博客成功与否的界面)
思路:
获取$_POST的值, (获取从填写博客表单界面传来的值)
形成sql语句.
发送查询,
并根据查询结果,提示用户相关信息.
*/
require('inc/conn.php');
//获取$_POST的值
$title = $_POST['title'];
$name = $_POST['username'];
$time = $_POST['time'];
$content = $_POST['content'];
$sql = "insert into tbblog (title,name,time,content) values ('$title','$name','$name','$content')";
$rs = mysql_query($sql,$conn);
?>
/*css,html省略*/
/*发布新博客成功后隔两秒钟进行跳转*/
<script type="text/javascript">
function zou() {
window.location.href = 'list.php';
}
window.setTimeout('zou()',2000);
</script>
</head>
<body>
<?php if($rs) { ?>
<img src="images/tjcg.png" width="98" height="85">
<h1>留言成功</h1>
<?php } else { ?>
<img src="images/tjsb.png" width="98" height="85">
<h1>留言失败</h1>
<?php } ?>
</div>
</div>
</body>
</html>
7. edit.php编辑和删除
在detail.php详情界面添加 删除 和 编辑
<p>
<a href="edit.php?id=<?php echo $info['id']; ?>">修改</a>
<a href="delete.php?id=<?php echo $info['id']; ?>">删除</a>
</p>
  空格
编辑界面 和发布 界面一样,不同的是 编辑 需要 传入 一个 id,对应的告诉后台哪一条博客被编辑
写一个 隐藏 控件 来加入这个id 这些被编辑的控件的参数 要被 包含在
<form onsubmit = "return chktbblog();" method="post" action = "edit_ok.php">
<p>
<input type = "hidden" name ="id" value = "<?php echo $info['id']; ?>" />
</p>
</form>
新建一个 edit_ok.php 文件,接收 编辑后的 博客内容
<?php
/*
文件名: edit_ok.php
目的: 修改留言的内容,以id为标志
接收什么数据??
$_POST数据,其中有id.
思路:
引入连接数据库的页面
引入lib.php
接收$_POST的值,
根据$_POST值形成sql语句,update语句.
以id为条件.
发送sql查询.
返回结果赋给一个变量.
根据返回结果,作判断,提示用户.
*/
require('inc/conn.php');
require('inc/lib.php');
$title = $_POST['title'];
$name = $_POST['username'];
$content = $_POST['content'];
$id = $_POST['id'] + 0;
$sql = "update msg set title = '$title',name = '$name', content = '$content' where id = $id";
// echo $sql;
$rs = mysql_query($sql,$conn);
?>
/*html,css省略*/
</style>
<script type="text/javascript">
function zou() {
window.location.href = 'list.php';
}
window.setTimeout('zou()',2000);
</script>
</head>
<body>
<div id="bt">
<div id="lb">
<?php if($rs) { ?>
<img src="images/tjcg.png" width="98" height="85">
<h1>编辑成功</h1>
<?php } else { ?>
<img src="images/tjsb.png" width="98" height="85">
<h1>编辑失败</h1>
<?php } ?>
</div>
</div>
</body>
</html>
8. delete.php删除
省略。。。。。