PHP+MYSQL的文章管理系统(一)

mysql

此篇文章属原创,如有引用,请标明作者信息。
Email: leo_cdp@yeah.net
http://www.cfeng.net/
本文代码任意转载,使用请保留此声明
###############################################
去年写了个文本管理总觉得有些不爽再加上申请了主机所以写个PHP+MYSQL的对文章进行管理测试期间
受到广大网友的支持现将代码公布
功能说明:
文章的基本操作:添加,修改,锁定,解锁,推荐,删除等待
并有强大功能的搜索,评论,推荐给朋友等功能,并对安全性进行着重加强,漂亮的界面人性化的设计。
主要文件列表:
setup.php 安装程序,运行后即可使用本系统!
index.php 显示
manager.php 添加,管理文章。
change.php 对已存在文章的操作。
edit_article.php 文章修改
commend.php 推荐文章给朋友。
read_article.php 文章阅读。
ping.php 发表文章评论。
search.php 文章搜索
type_manager.php 类型管理
login.php 管理员登陆。
config.php 主要配置文件
func.php 函数文件
footer.inc,header.inc,nav.inc包含文件。
list.txt 类型列表
以及其它一些周边程序
管理系统演示地址:
http://www.cfeng.net/article/
########################config.php 主要配置文件##########################
<?
$host="localhost"; #数据库主机
$database_usn="cfeng.net"; ##数据库用户
$database_pwd="cfeng.net"; ##数据库密码
$database="cfeng.net"; ##数据库
$table="cfeng.net"; ##要存放文章的表
$ping_tab="ping_tab1"; ##存放评论的表
$admin_usn="leo"; ##管理员用户名
$admin_pwd="leo"; ##管理员密码
$admin_mail="leo_cdp@yeah.net"; ##管理员信箱
$pagenum="20"; ##每页显示文章数
$sess=md5($admin_usn.$admin_pwd); ##登陆认证采用MD5生成
?>
#####################func.php 函数文件 ###################################
<?
require "./inc/config.php";
function mscon()##数据库链接
{
global $host,$database_usn,$database_pwd;
@mysql_connect("$host","$database_usn","$database_pwd") or die("对不起,数据库连接错误!请稍候再来,或与管理员联系");
}
function check_login()
{ global $sess;
if(!session_is_registered("sess_0230a09a07cab1df8112d00b1f9a9719"))
{
if($sess_0230a09a07cab1df8112d00b1f9a9719!=$sess)
{
redir("login.php");
exit;
}
}
}
function redir($addr)
{
header("location:$addr");
}
function add_article()##本系统实行宽进严出所以添加文章部份显得略为简单!
{
global $database,$table,$title,$cont,$type,$html;
$dat=date(Y年m月d日);
$title=htmlspecialchars($title);
$query="insert into $table(title,cont,type,time,html) values('$title','$cont','$type','$dat','$html')";
$res=mysql_db_query("$database",$query);
if(!$res)
echo mysql_error();
}
function add_hits($id)##添加浏览次数!
{
global $database,$table;
$query="update $table set hits=hits+1 where id=$id";
$res=mysql_db_query("$database",$query);
}
function add_comm($id)##把本文加为推荐文章
{
global $database,$table;
$query="update $table set comm=1 where id=$id";
$res=mysql_db_query("$database",$query);
}
function un_comm($id)##清除推荐!
{
global $database,$table;
$query="update $table set comm='0' where id=$id";
$res=mysql_db_query("$database",$query);
}
function add_lock($id)##锁定文章
{
global $database,$table;
$query="update $table set locked='1' where id=$id";
$res=mysql_db_query("$database",$query);
}

function un_lock($id)##清除锁定!
{
global $database,$table;
$query="update $table set locked=0 where id=$id";
$res=mysql_db_query("$database",$query);
}
function add_p_num($id)##添加评论次数!
{
global $database,$table;
$query="update $table set p_num=p_num+1 where id=$id";
$res=mysql_db_query("$database",$query);
}
function add_del($id)##删除文章!
{
global $database,$table;
$query="delete from $table where id='$id'";
$res=mysql_db_query("$database",$query);
}
########################setup.php 安装文件######################
<?
session_start();
require"./inc/func.php";
check_login();
?>
<?
if($sub)
{
$file_cont="<? #don't edit thisfile use the setup.php ";
$file_cont.="$host="$host";#your database server address ";
$file_cont.="$database_usn="$database_usn"; ";
$file_cont.="$database_pwd="$database_pwd"; ";
$file_cont.="$database="$database"; ";
$file_cont.="$table="$table"; ";
$file_cont.="$ping_tab="$ping_tab"; ";
$file_cont.="$admin_usn="$admin_usn"; ";
$file_cont.="$admin_pwd="$admin_pwd"; ";
$file_cont.="$admin_mail="$admin_mail"; ";
$file_cont.="$pagenum="$pagenum"; ";
$file_cont.="$sess=md5($admin_usn.$admin_pwd); ";
$file_cont.=" ";
$file_cont.="?>";
$fp=fopen("./inc/config.php","w");
if(fputs($fp,$file_cont))
echo "配置完成正检测各选项的正确性<BR>";
else echo "文件写入错误,请检测文件所在目录的权限<br>";
fclose($fp);
echo "正在检测数据连接.........." ;
if(@mysql_connect("$host","$database_usn","$database_pwd"))
{
echo "成功!<BR>" ;
$query="CREATE TABLE $table(
id int(4) NOT NULL auto_increment,
title varchar(55) NOT NULL,
cont text NOT NULL,
time varchar(14) NOT NULL,
type varchar(20) NOT NULL,
comm int(1) DEFAULT '0' NOT NULL,
p_num int(2) DEFAULT '0' NOT NULL,
locked int(1) DEFAULT '0' NOT NULL,
hits int(4) DEFAULT '0' NOT NULL,
html int(1) DEFAULT '1' NOT NULL,
PRIMARY KEY (id),
UNIQUE id (id),
KEY id_2 (id)
) " ;
if(mysql_db_query($database,$query))
echo"数据库 $table 建立成功<BR>".mysql_error();
else
echo"数据库 $table 建立失败<BR>";
$query="CREATE TABLE $ping_tab (
id int(4) NOT NULL auto_increment,
p_id int(4) DEFAULT '0' NOT NULL,
name varchar(50) NOT NULL,
mail varchar(200) NOT NULL,
p_cont text NOT NULL,
time datetime DEFAULT '0000-00-00 00:00:00' NOT NULL,
ip varchar(15) NOT NULL,
PRIMARY KEY (id),
UNIQUE id (id),
KEY id_2 (id)
)";
if(mysql_db_query($database,$query))
{
echo"用户评论数据库 $ping_tab 建立成功<BR>恭喜,文章管理系统安装成功!请<a href=login.php>这边走</a>进行基本设置!<BR>";
$fp=fopen("setup.php","r");
$file_cont=fread($fp,filesize("setup.php"));
$file_cont="<? session_start(); require"./inc/func.php"; check_login(); ?> ".$file_cont;
$fp=fopen("setup.php","w");
fputs($fp,$file_cont);
fclose($fp);
}
else
echo"用户评论数据库$ping_tab建立失败<BR>";
}
else
echo "数据库连接失败!请检测你用户名密码的正确性!<BR>";
exit();
}
require "./inc/header.inc";
?>
<script language="javascript">
function db_pwd()
{
var theResult = true;
var elem4 = null;

if (document.forms[0].elements[2].value == "" || document.forms[0].elements[2].value!=document.forms[0].elements[3].value)
{
alert("您两次输入的数据库密码不一致,或者为空!");
document.forms[0].elements[2].value="";
document.forms[0].elements[3].value="";
theResult = false;

}
return theResult;
}
function admin_pwd()
{
var theResult = true;
var elem4 = null;
if (document.forms[0].elements[8].value == "" || document.forms[0].elements[8].value!=document.forms[0].elements[9].value)
{
alert("您两次输入的管理员密码不一致,或者为空!");
document.forms[0].elements[8].value="";
document.forms[0].elements[9].value="";
theResult = false;

}
return theResult;
}
function go()
{
var theResult=true;
theResult =db_pwd()&&admin_pwd();
return theResult;
}
</script>
</head>
<body bgcolor="#FFFFFF">
<? require "./inc/nav.inc";?>
<form name="form1" method="post" action="<? echo $PHP_SELF; ?>" onsubmit="return go()";>
<table border="0" cellspacing="0" cellpadding="0" align="center" style=text-align:left;>
<tr>
<td colspan="3">
<div align="center">蓝狐文章管理安装程序<br>
(请正确填写以下内容否则程序将无法使用)</div>
</td>
</tr>
<tr>
<td>数据库服务器:</td>
<td colspan="2">
<input type="text" name="host" value="localhost" class="border" size="30">
</td>
</tr>
<tr>
<td>数据库用户名: </td>
<td colspan="2">
<input type="text" name="database_usn" class="border" size="30">
</td>
</tr>
<tr>
<td>数据库用户密码:</td>
<td colspan="2">
<input type="password" name="database_pwd" class="border" size="30">
</td>
</tr>
<tr>
<td>数据库密码确认:</td>
<td colspan="2">
<input type="password" name="database_pwd2" class="border" size="30">
</td>
</tr>
<tr>
<td>数据库名:</td>
<td colspan="2">
<input type="text" name="database" class="border" size="30">
</td>
</tr>
<tr>
<td>存放文章的表:</td>
<td colspan="2">
<input type="text" name="table" class="border" size="30">
</td>
</tr>
<tr>
<td>存放评论的表:</td>
<td colspan="2">
<input type="text" name="ping_tab" class="border" size="30">
</td>
</tr>
<tr>
<td>管理员用户名:</td>
<td colspan="2">
<input type="text" name="admin_usn" class="border" size="30">
</td>
</tr>
<tr>
<td>管理员密码:</td>
<td colspan="2">
<input type="password" name="admin_pwd" class="border" size="30">
</td>
</tr>
<tr>
<td>管理员密码确认:</td>
<td colspan="2">
<input type="password" name="admin_pwd2" class="border" size="30">
</td>
</tr>
<tr>
<td>管理员邮件地址:</td>
<td colspan="2">
<input type="text" name="admin_mail" class="border" size="30">
</td>
</tr>
<tr>
<td>每页显示文章数:</td>
<td colspan="2">
<input type="text" name="pagenum" class="border" size="30">
</td>
</tr>
<tr>
<td>
<div align="center"><br>
</div>
</td>
<td>
<div align="left"><br>
<input type="submit" name="sub" value="submit" class="border">
  
<input type="reset" name="reset" value="reset" class="border">
</div>
</td>
</tr>
</table>
<p>  </p>
</form>
<?require "./inc/footer.inc";?>

时间: 2024-10-03 12:49:58

PHP+MYSQL的文章管理系统(一)的相关文章

PHP+MYSQL的文章管理系统(一)_php基础

###############################################  此篇文章属原创,如有引用,请标明作者信息.  Email: leo_cdp@yeah.net http://www.cfeng.net/ 本文代码任意转载,使用请保留此声明 ###############################################  去年写了个文本管理总觉得有些不爽再加上申请了主机所以写个PHP+MYSQL的对文章进行管理测试期间 受到广大网友的支持现将代码公布

PHP+MYSQL的文章管理系统(二)

mysql ###############index.php###################### <?session_start(); require"./inc/func.php"; mscon(); require "./inc/header.inc"; ?> <script language="javascript"> function opwin(filename) { window.open("

PHP+MYSQL的文章管理系统(二)_php基础

###############index.php###################### <?session_start(); require"./inc/func.php"; mscon(); require "./inc/header.inc"; ?> <script language="javascript"> function opwin(filename) {                window.op

思维导图学 Linux Shell攻略之干货篇 mysql数据库脚本管理系统

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://dba10g.blog.51cto.com/764602/1610653 以结果为导向的学习,才是最有效率学习.笔者以前也曾经隔三差五的学习linux shell编程来着.给我的感觉就是,今天学了,后天忘了,一星期之后就白学了. 还好,最近自己平时没啥事,一直照着<linux shell攻略>,学做一些小例子,看着自己写的shell程序,简单的几行程序,实现一些好玩的效果,信心

ASP.net文章管理系统:系统设计与编码(上)

asp.net|编码|设计 经过前面系统分析和数据库设计,文章管理系统的基本设计环境已经建立起来了,按照管理信息系统设计的环节,现在已经进入了系统实施阶段.本系统拟采用Visual Studio.NET2003设计.使用Visual Studio.NET2003新建一个Web应用程序 ,命名为TheArticleSYS,具体步骤略.下面,我们按照数据信息积累分先后顺序详细介绍本系统的设计与编写.首先是后台管理部分,然后是前台浏览和检索部分.     14.3.1 Admin_Management

ASP.net文章管理系统:系统设计与编码(下)

asp.net|编码|设计 ASP.net文章管理系统:系统设计与编码. 相关文章:ASP.net文章管理系统:系统设计与编码(上)     14.3.4 ArticlesList.aspx的设计与编码     ArticlesList.aspx提供了两个功能:     (1)根据传入参数列出该类别的文章列表:     (2)根据传入参赛检索出符合条件的文章列表.     这两个功能的实现是有后台逻辑程序根据传入的参数类型判断,然后为用户提供不同的服务.     ArticlesList.asp

Breeze 文章管理系统 v1.0.0正式发布_php基础

在经过了10多天的测试后,Breeze文章管理系统v1.0.0终于正式发布了,在此感谢支持Breeze及给予我帮助的广大网友^_^. 1.0.0版本在beta的基础上,修正了目前所发现在的一些bug,并对程序进行了一定的优化.假如在使用中发现什么问题,欢迎来论坛交流(http://phpsir.org/bbs),演示地址:http://phpsir.org. Breeze 文章管理系统是基于PHP+MySQL编写的开源且免费的文章发布系统,本系统基于GNU LGPL许可证发布(GNU LGPL地

老Y文章管理系统V2.2系统注入漏洞分析与利用

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 今天有朋友让我帮忙给他们公司的网站检查下安全性,在答应了朋友之后.打开朋友公司网站看了一下,发现是用老Y文章管理系统V2.2,下面就开始对其进行进一步的分析. 分析对像:老Y文章管理系统 V2.2,因以下有些地址涉及隐私问题,所以部分地址去除或者隐藏. (一)前期分析 由于该套系统是ASP+ACCESS,可能对于我们来说就有很多的限制,不像M

ASP.net文章管理系统:数据库设计与配置

asp.net|设计|数据|数据库|数据库设计 本系统采用Access 2003数据库系.在该应用程序的根目录使用Access 2003新建数据库Articlesys_db.mdb,根据系统需要,数据库中的数据表包括下面三个:     相关文章:ASP.NET文章管理系统:系统分析与设计     akinds数据表:用于存放文章类别信息,包括文章类别ID和文章类别信息,表结构和字段信息如图14.4所示. 图14.4 akinds数据表     articles数据表:用户存放文章的信息,包括文章