简易 文章发布系统——后台管理系统

来自于慕课网的学习
       这里建立一个简易的文章发布系统——后台管理系统,功能包括 文章的发表、查看文章列表,其中还提供对文章的删除和修改功能。
       首先使用mysql建立数据库 info,在info数据库中建立一张 article 表:

       文章发布系统的目录结构如下:

       为实现操作数据库的功能,需要做php连接数据库等操作,所以先封装这些操作,当需要操作数据库时,将文件引入即可。
      数据库的配置 config.php
<?php
	//防止乱码
	header("Content-type:text/html;charset=utf-8");
	define('HOST','127.0.0.1');
	define('USERNAME','root');
	define('PASSWORD','root');
?>
       连接数据库等操作 connect.php
<?php
	require_once('config.php');

	//文件头部设置
	error_reporting(E_ALL &~E_NOTICE &~E_DEPRECATED);

	//1.连库
	if(!($con = mysql_connect(HOST,USERNAME,PASSWORD))) {
		echo mysql_error();
	}
	//2.选库
	if(!mysql_select_db("info")) {
		echo mysql_error();
	}
	//3.字符集
	if(!mysql_query("set names utf8")) {
		echo mysql_error();
	}
?>


        下面首先实现发布文章的功能,使用到 bootstrap 建立一个简单的页面 article.add.php ,效果如下:

      myCss/style.css
body {
	font-family:'Hiragino Sans GB','Microsoft Yahei',"WenQuanYi Micro Hei",SimSun,Tahoma,Arial,Helvetica,STHeiti;

	/* background-color: #BDC3C7; */
}
textarea {
	resize: none;
}

.title {
	padding-left: 30px;
}

.body-container {
	/* border-radius: 8px;
	
	padding: 20px;
	box-shadow: 0 0 1px 1px #DDD; */

	margin-bottom: 80px;
}

.copyright {
	background-color: #BDC3C7;
	text-align: center;
	padding: 20px;

	position: fixed;
	bottom: 0px;
	width: 100%;
}
       article.add.php
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>发布文章</title>
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="文章发布系统——后台管理系统">
    <meta name="author" content="DreamBoy">
	<link rel="stylesheet" href="../css/bootstrap.min.css">
	<link rel="stylesheet" href="../myCss/style.css">
</head>
<body>
	<div class="container">
		<div class="page-header ex-page-header">
			<h1 class="title">文章发布系统<small>  ——后台管理系统</small></h1>
		</div>

		<div class="body-container">
			<div class="row">
					<div class="col-md-2">
						<div class="panel panel-default">
							<div class="panel-heading">
								<span class="glyphicon glyphicon-th-list" aria-hidden="true"></span>
							</div>
							
								<div class="list-group">
									<a href="article.add.php" class="list-group-item active">发布文章</a>
									<a href="article.manage.php" class="list-group-item">管理文章</a>
								</div>
						</div>
					</div>

					<div class="col-md-10">
						<div class="panel panel-default">
							<div class="panel-heading">
								<h4>发布文章</h4>
							</div>

							<div class="panel-body">
								<form method="post" action="article.add.handle.php" class="form-horizontal">
									<div class="form-group">
										<label for="article-title" class="col-sm-2 control-label">标题</label>
										<div class="col-sm-10">
											<input type="text" class="form-control" id="article-title" placeholder="Title" name="title">
										</div>
									</div>

									<div class="form-group">
										<label for="article-author" class="col-sm-2 control-label">作者</label>
										<div class="col-sm-10">
											<input type="text" class="form-control" id="article-author" placeholder="Author" name="author">
										</div>
									</div>

									<div class="form-group">
										<label for="article-des" class="col-sm-2 control-label">简介</label>
										<div class="col-sm-10">
											<textarea name="description" id="article-des" cols="30" rows="5" class="form-control"></textarea>
										</div>
									</div>

									<div class="form-group">
										<label for="article-content" class="col-sm-2 control-label">内容</label>
										<div class="col-sm-10">
											<textarea name="content" id="article-content" cols="30" rows="15" class="form-control"></textarea>
										</div>
									</div>

									<div class="form-group">
										<div class="col-sm-offset-2 col-sm-10">
											<button type="submit" class="btn btn-default">提交</button>
										</div>
									</div>
								</form>
							</div>
						</div>
					</div>
				</div>
			</div>
		</div>
	</div>

	<footer class="copyright">
		Copyright &copyright; 1995-2016, DreamBoy.NET, All Rights Reserved
	</footer>
</body>
</html>
       当文章填写完毕之后,需要提交文章信息(即提交表单),需要一个处理程序进行数据库的添加操作,对应的文件为 article.add.handle.php,添加文章信息,并返回信息给浏览器,显示发布文章的状态(成功或失败),并跳转至文章的管理页面(文章列表)article.manage.php。
       article.add.handle.php
<?php
	require_once('../connect.php');
	//把传递过来的信息入库,在入库之前对所有的信息进行校验。
	//print_r($_POST);

	if(!isset($_POST['title']) || empty($_POST['title'])) {
		echo "<script>alert('标题不能为空'); window.location.href='article.add.php'</script>";
	}

	$title = $_POST['title'];
	$author = $_POST['author'];
	$description = $_POST['description'];
	$content = $_POST['content'];
	$dateline = time();

	$insertsql = "insert into article(title,author,description,content,dateline) values('$title','$author','$description','$content',$dateline)";
	//echo $insertsql;
	if(mysql_query($insertsql)) {
		echo "<script>alert('发布文章成功'); window.location.href='article.manage.php'</script>";	
	} else {
		echo "<script>alert('发布文章失败'); window.location.href='article.manage.php'</script>";
	}

	mysql_close($con);
?>

      article.manage.php 界面如下:


       为了处理文章的删除和修改操作,需要建立对应的php处理文件:article.del.handle.php、article.modify.handle.php。同时还有需要文章信息的界面 article.modify.handle.php。
       article.manage.php (需要对数据库进行查找,得到所有文章信息)
<?php
	require_once('../connect.php');
	$sql = "select * from article order by dateline desc";
	$query = mysql_query($sql);
	if($query && mysql_num_rows($query)) {
		while($row = mysql_fetch_assoc($query)) {
			$data[] = $row;
		}
	} else {
		$data = array();
	}
?>
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>管理文章</title>
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="文章发布系统——后台管理系统">
    <meta name="author" content="DreamBoy">
	<link rel="stylesheet" href="../css/bootstrap.min.css">
	<link rel="stylesheet" href="../myCss/style.css">
</head>
<body>
	<div class="container">
		<div class="page-header ex-page-header">
			<h1 class="title">文章发布系统<small>  ——后台管理系统</small></h1>
		</div>

		<div class="body-container">
			<div class="row">
					<div class="col-md-2">
						<div class="panel panel-default">
							<div class="panel-heading">
								<span class="glyphicon glyphicon-th-list" aria-hidden="true"></span>
							</div>
							
								<div class="list-group">
									<a href="article.add.php" class="list-group-item">发布文章</a>
									<a href="article.manage.php" class="list-group-item active">管理文章</a>
								</div>
						</div>
					</div>

					<div class="col-md-10">
						<div class="panel panel-default">
							<div class="panel-heading">
								<h4>文章管理列表</h4>
							</div>

							<div class="panel-body">
								<table class="table table-hover">
									<tr>
										<th>编号</th>
										<th>标题</th>
										<th>操作</th>
									</tr>

									<tbody>
										<?php
											if(!empty($data)) {
												foreach ($data as $value) {
										?>
													<tr>
														<td><?php echo $value['id'];?></td>
														<td><?php echo $value['title'];?></td>
														<td><a href="article.del.handle.php?id=<?php echo $value['id'];?>">删除</a>
															 <a href="article.modify.php?id=<?php echo $value['id'];?>">修改</a>
														</td>
													</tr>
										<?php
												}
											}
										?>
									</tbody>
								</table>
							</div>
						</div>
					</div>
				</div>
			</div>
		</div>
	</div>

	<footer class="copyright">
		Copyright &copyright; 1995-2016, DreamBoy.NET, All Rights Reserved
	</footer>
</body>
</html>
       点击“删除”时,将对对应文章进行删除操作,删除操作提交给article.del.handle.php文件进行处理。
       article.del.handle.php
<?php
	require_once('../connect.php');

	$id = intval($_GET['id']);
	$deletesql = "delete from article where id=$id";
	if(mysql_query($deletesql)) {
		echo "<script>alert('删除文章成功'); window.location.href='article.manage.php'</script>";
	} else {
		echo "<script>alert('删除文章失败'); window.location.href='article.manage.php'</script>";
	}
?>
       完成删除操作后(不论删除成功或删除失败),跳转到原来的文章管理界面article.manage.php。
       点击“修改”时,将传递对应文章的“id”到修改页面 article.modify.php。修改页面接收到文章id后,根据该id查询该文章的信息,将文章的信息显示在文本框中,供管理员修改。
       点击id为6的文章进行修改:

       跳转修改界面:

       article.modify.php
<?php
	require_once('../connect.php');
	//读取旧信息
	$id = intval($_GET['id']);
	$query = mysql_query("select * from article where id=$id");
	$data = mysql_fetch_assoc($query);
?>
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>修改文章</title>
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="文章发布系统——后台管理系统">
    <meta name="author" content="DreamBoy">
	<link rel="stylesheet" href="../css/bootstrap.min.css">
	<link rel="stylesheet" href="../myCss/style.css">
</head>
<body>
	<div class="container">
		<div class="page-header ex-page-header">
			<h1 class="title">文章发布系统<small>  ——后台管理系统</small></h1>
		</div>

		<div class="body-container">
			<div class="row">
					<div class="col-md-2">
						<div class="panel panel-default">
							<div class="panel-heading">
								<span class="glyphicon glyphicon-th-list" aria-hidden="true"></span>
							</div>
							
								<div class="list-group">
									<a href="article.add.php" class="list-group-item">发布文章</a>
									<a href="article.manage.php" class="list-group-item">管理文章</a>
								</div>
						</div>
					</div>

					<div class="col-md-10">
						<div class="panel panel-default">
							<div class="panel-heading">
								<h4>修改文章</h4>
							</div>

							<div class="panel-body">
								<form method="post" action="article.modify.handle.php" class="form-horizontal">
									<input type="hidden" name="id" value="<?php echo $data['id'];?>">

									<div class="form-group">
										<label for="article-title" class="col-sm-2 control-label">标题</label>
										<div class="col-sm-10">
											<input type="text" class="form-control" id="article-title" placeholder="Title" name="title" value="<?php echo $data['title'];?>">
										</div>
									</div>

									<div class="form-group">
										<label for="article-author" class="col-sm-2 control-label">作者</label>
										<div class="col-sm-10">
											<input type="text" class="form-control" id="article-author" placeholder="Author" name="author" value="<?php echo $data['author'];?>">
										</div>
									</div>

									<div class="form-group">
										<label for="article-des" class="col-sm-2 control-label">简介</label>
										<div class="col-sm-10">
											<textarea name="description" id="article-des" cols="30" rows="5" class="form-control"><?php echo $data['description'];?></textarea>
										</div>
									</div>

									<div class="form-group">
										<label for="article-content" class="col-sm-2 control-label">内容</label>
										<div class="col-sm-10">
											<textarea name="content" id="article-content" cols="30" rows="15" class="form-control"><?php echo $data['content'];?></textarea>
										</div>
									</div>

									<div class="form-group">
										<div class="col-sm-offset-2 col-sm-10">
											<button type="submit" class="btn btn-default">提交</button>
										</div>
									</div>
								</form>
							</div>
						</div>
					</div>
				</div>
			</div>
		</div>
	</div>

	<footer class="copyright">
		Copyright &copyright; 1995-2016, DreamBoy.NET, All Rights Reserved
	</footer>
</body>
</html>
       提交修改请求到article.modify.handle.php进行文章的更新处理。

       article.modify.handle.php

<?php
	require_once('../connect.php');
	//把传递过来的信息入库,在入库之前对所有的信息进行校验。
	//print_r($_POST);

	if(!isset($_POST['title']) || empty($_POST['title'])) {
		echo "<script>alert('标题不能为空'); window.history.go(-1);</script>";
		mysql_close($con);
		exit;
	}

	$id = $_POST['id'];
	$title = $_POST['title'];
	$author = $_POST['author'];
	$description = $_POST['description'];
	$content = $_POST['content'];
	$dateline = time();

	$updatesql = "update article set title = '$title',author = '$author',description = '$description',content = '$content',dateline=$dateline where id=$id";
	//echo $updatesql;
	
	if(mysql_query($updatesql) && mysql_affected_rows($con)) {
		echo "<script>alert('修改文章成功'); window.location.href='article.manage.php'</script>";	
	} else {
		echo "<script>alert('修改文章失败'); window.location.href='article.manage.php'</script>";
	}

	mysql_close($con);
?>

       点击提交“修改”后,修改成功:


        完成修改操作后(不论修改成功或修改失败),跳转到原来的文章管理界面article.manage.php。


  • 10
    点赞
  • 66
    收藏
    觉得还不错? 一键收藏
  • 45
    评论
易点内容管理系统(DianCMS)是基于微软.NET Framework 2.0、AJAX1. 0技术,采用Microsoft Access/SQL Server 2000/2005存储过程进行多层架构开发的内容管理系统。其功能设计主要面向中大型企业、各个行业、事业单位以及政府机关等复杂功能站点。系统已建立文章系统、图片系统、下载系统、个人求职、企业招聘、房产系统、音乐系统、视频系统、网上商店。使用自定义模型、自定义字段、自定义表单、自定义录入界面、会员系统等功能,您还可以轻松、灵活的建立适合自身需求的任何系统功能,最大化满足每个用户任何时候的不同需求。程序特点如下:1、自定义内容模型、表单、用户注册模型2、自定义内容录入界面、表单录入界面、用户注册界面3、自定义搜索及搜索结果显示方式4、自定义Sitemap5、超强字段管理功能:单行文本、多行文本、单选项、多选项、二级联动、三级联动、附件等等6、超强表单功能管理7、普通标签任意条件组合调用8、完善的单页管理管理9、首次引用一条数据属于多个栏目功能10、全站录入界面统一生成aspx文件,方便管理和扩展11、全站使用SEO优化设置12、后台支持选项卡功能,可记录最近操作的8个功能连接13、会员系统、会员组权限设置14、管理员组权限设置15、管理员、用户日志记录16、多种生成内容方式17、Excel完美导入18、超强采集系统:采用多线程设计可暂停、继续、终止采集任务19、灵活的VS自由标签20、终极列表内置24种分页效果,满足不同网站风格21、集成文章系统、下载系统.使用导入模型功能,可增加多种系统功能22、数据字典内置多种常用类别:三级地区、个人爱好、评分等级等23、站内链接功能24、特殊字符过滤功能25、Email邮件单发、群发26、备份和压缩数据库27、录入信息使用正则表达式验证28、站点短消息系统29、上传文件管理30、任意广告制作系统31、URL伪静态功能:采用微软URLRewriter核心架构32、评论系统33、后台5种风格主题供选择34、VS Free标签——任意表数据调用35、关键字管理36、完善的会员系统:用户投稿、好友分组、短消息管理、推广奖励、备忘录自动提醒等 DianCMS v7.0.0 更新内容:【增加】简易OA系统1、创建流程模型2、创建流程3、申请工作4、我的工作5、部门文件夹6、我的文件夹7、工作邮件【开放】分站【开放】计划任务【开放】企业空间【开放】内容阅读权限【开放】短信设置:整合阿里云短信、企信三通、第一信息云短信、短信宝。【开放】全文检索【开放】栏目扩展字段【开放】微信整合【开放】考试系统【调整】采集系统:通过列表获取到的URL地址,可根据指定规则进行改变,直达到我们需要采集的信息页面。【增加】系统安全防护,成功通过多家第三方机构检测。
WEEDCMS是由野草独立基于PHP+MYSQL开发的内容管理系统。面向企业、个人、小门户等中小规模网站使用而开发的。采用国际上比较流行Smarty引擎和敏捷的JQuery JS框架。本程序是在PHPNOW集成开发环境中完成的,测试的时候建议使用该环境。另外如果是其他环境建议使用PHP(5.2.x)+Apache(2.x)+MYSQL(5.x)组合。声明:如果您的环境是PHP4的话建议升级到最新版本! 野草网站管理系统(WEEDCMS) 5.6 Build 20111203 更新内容: 1.[修复] 验证码失效问题 2.[修复] 详细页面图片缩小BUG 3.[修复] 在chrome下CSS显示问题 4.[修复] 搜索页面不支持rewrite问题 5.[优化] XH编辑器更新到最新版本 6.[修复] 缓存失效问题 7.[修复] 更换了后台登陆样式 【功能介绍】 01.基于PHP+MYSQL架构。 02.创新型内容管理模式,建立频道后可定义内容模型,均在后台可以控制,非常方便。 03.模板引擎采用了成熟稳定的Smarty引擎,很轻松就可以做出模板界面来。 04.前台和后台均采用了DIV+CSS,速度比传统型略快。 05.JS采用了国际上比较流行的Jquery框架,还有基于Jquery的XHEditor可视化编辑器。 06.支持基于Apache和IIS的路径优化功能,让您的网站面向搜索引擎而优化。 07.单页功能:制作类似关于我们和公司介绍只要添加数据就可以实现,并且可控制访问权限。 08.后台支持权限分配,减轻管理员工作负担。 09.可自定义菜单导航,可支持2J菜单。 10.支持友情连接 11.投票功能:可以控制在哪个页面显示,并且可以实现时间段显示投票,控制了一个IP只能投一次。 12.广告功能:支持HTML自定义,并且可投送到想要显示的页面。 13.支持内容无限分类,可详细定义自己的内容。 14.制作了会员组接口,方便控制资源分配等。 15.实时监控网站在线人员动向。 16.后台管理操作可一一记录到日志中。 17.支持多语言包切换。 18.支持留言本模块 19.支持IP和IP段过滤功能 20.支持非法字符过滤功能 21.支持内容分页 演示网址:www.gg265.net
### 回答1: 简易后台管理系统的HTML,需要包含基本的管理界面,包括登录页、主页、管理页、数据展示页等。 登录页应该包含一个表单,用于输入用户名和密码,并有相应的验证机制。当用户输入正确的用户名和密码时,系统应自动跳转到主页。否则,应提供相应错误提示。 主页应包含菜单栏和快捷操作入口。菜单栏应包含系统的主要功能,快捷操作入口则便于用户快速执行常用操作。 管理页应提供各种管理操作功能,如增删改查、批量上传等。此外,还需提供搜索和筛选功能,便于管理员快速查找需要的数据。 数据展示页应提供各种数据视图,如表格、图表等,便于管理员查看数据状态和趋势。 需要注意的是,简易后台管理系统的HTML需要采用清晰简洁的设计风格,尽量避免复杂的布局和过多的视觉效果。同时,应该考虑到用户的使用习惯和易用性,确保用户可以快速掌握系统的使用方法并完成相关操作。 ### 回答2: 简易后台管理系统需要一个直观、方便的界面,以帮助用户管理网站内容。在设计该系统的界面时,应充分考虑用户的需求和使用习惯,确保界面的整体风格简洁、清晰,而且易于操作。 首页应该包含重要的组件和功能,如常见的导航菜单、便捷搜索栏以及对网站最新情况的一些简要总结等。其他相关模块可根据需要进行添加或调整。也可以采用模板,根据需要自定义排版,以达到用户自定义后台管理页面的目的。 在系统管理方面,设计应考虑到不同权限的用户,例如管理员和编辑员等。为每个角色设计独立的页面,以方便他们快速和方便地管理网站内容。管理页面应可快速查找并编辑相关内容,如文章、图片、视频等。 界面设计过程中,理解网站编辑员的工作流程,有助于设计出更符合实际需求的简单后台管理系统。同时,回归核心,把用户体验放在至高处,能够为相关用户提供卓越的使用体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 45
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值