基于PHP的在线投稿系统的设计与实现

时间:2022-01-19 01:23:04

基于PHP的在线投稿系统的设计与实现

摘要:该文阐述了如何构造一个基于PHP的在线投稿系统,对B/S结构、PHP技术进行了论述。阐述了在线投稿系统的需求分析、功能模块划分及功能模块的实现过程。在此基础上,对所应用的关键技术进行描述。

关键词:在线;投稿;PHP

中图分类号:TP311文献标识码:A文章编号:1009-3044(2010)18-4987-03

The Design and Implementation about Online Submission System Based on PHP

LI Xiao-bai, CHEN You-ji, SHEN Hua

(Eduational Technology Center of Naval Arms and Command College, Guangzhou 510430, China)

Abstract: The paper describes how to build a Online Submission System with PHP,at the same time,describes the B/S structure and PHP technology. The paper also discusses the requirement analysis, functional module division and implementation procedure of the system. Finallly the paper also describes key technology of the system.

Key words: online; submission; PHP

1 系统功能

本系统能让注册的用户进行在线投稿,查看和修改投稿信息记录。同时用户能查看并修改个人的注册信息。管理员登录后能进行后台管理,包括进行用户信息的查询、添加、修改和删除,审稿专家登录后能对稿件进行审核判断稿件是否通过。主要功能有:用户模块、用户注册模块、用户信息修改模块、投稿模块、稿件管理模块、审稿模块、后台管理中的登录模块和管理员功能模块等。其中用户注册模块为第一次访问的新用户提供注册。用户信息修改模块在老用户登录后,选择修改注册信息则跳转到用户修改界面,显示除密码以外的其他信息,当旧密码正确才能修改成功。其中稿件管理模块包括浏览稿件和修改稿件功能。投稿模块除将文字信息写进数据库外,如果有附件还需要将附件保存至相应目录,并将下载地址写进数据库;审稿模块只有用户类型为审稿专家才具有的功能。登录模块是在线投稿系统的进入接口,而管理员功能模块能对用户信息进行查询并可以对注册用户进行添加、修改、删除操作。

2 系统分析与设计

2.1 用户注册模块设计

用户模块包括用户注册,登入,信息修改等功能;管理员模块包括添加、删除会员,修改会员信息,包括用户权限;稿件处理模块包括投稿,审稿,稿件管理三大功能。用户注册模块主要对于第一次来投稿的新用户提供注册,完成注册后登录可以进行投稿,稿件管理,修改个人注册信息操作。注册界面如图1所示。

2.2 稿件修改模块

当点击进入修改稿件页面时,执行SQL语句 Select * From articles Where mem_author= '$_cookie[un]',目的是找出作者为当前登入用户的稿件,读取然后将相应字段显示。其中cookie中un的内容是用户登入时写进cookie的用户名,用户选择好要修改的稿件则显示以下页面,如图2所示。

PHP代码如下:

$id=$_GET[id]; //要修改文章的id

mysql_connect("localhost", "root", "asd123456") or die("Could not connect: " . mysql_error());

mysql_query("SET NAMES 'gb2312'");

mysql_select_db("ks");

$result = mysql_query("SELECT * FROM articles where art_id='".$id."'");

$row = mysql_fetch_array($result); //以数组的形式返回查找到的数据集

?>

得到数据集后,在html表单中列出数据库中相应的内容,方法如下:

修改完数据,点击完成后,执行php代码将新数据替换之前的数据:

if ($_POST[Submit])

{$time=date("Y-m-d H:i:s");

mysql_select_db("ks");

$sql = "update articles set art_mtitle='".$_POST[art_mtitle]."',art_stitle='".$_POST[art_stitle]."',art_author='".$_POST[art_author]."',art_addr='".$_POST[art_addr]."',art_email='".$_POST[art_email]."',art_phone='".$_POST[art_phone]."',art_yb='".$_POST[art_yb]."',art_intro='".$_POST[art_intro]."',art_fj='".$upfile->nd_finalfile."',art_tdate='".$time."' where art_id='".$id."'";

$result=mysql_query($sql);

if($result)

echo"alert('修改成功!') ";

else

echo "失败!";

echo mysql_error() ;

}

?>

2.3 登录模块设计

登录模块是用于已注册用户和管理人员进行登录的。登录时针对用户名或密码错误会给出相对应的错误提示。登录界面如图3所示。

本模块主要是使用表单,利用PHP中的$_POST方法将文本框中的数据提取出来,与数据库中的数据进行核对验证。登录模块的关键代码如下:

function exists($user)//判断用户名是否存在

{

$result = $this->conn->query("SELECT * FROM mem WHERE mem_user='" . $user . "'");

if($row = $result->fetch_row()) {

$this->mem_user = $mem_user;

$this->mem_pass = $row[1];

$this->mem_name = $row[2];

return true;

}

else

return false;

}

function verify($user, $pwd) //判断用户名或是密码错误

{

$result = $this->conn->query("SELECT * FROM mem WHERE mem_user='" . $user . "'");

if(!($row = $result->fetch_row()))

return 1;

$sql = "SELECT * FROM mem WHERE mem_user='" . $user . "' AND mem_pass='" . $pwd . "'";

$result = $this->conn->query($sql);

if($row = $result->fetch_row())

{

$this->mem_user = $user;

$this->mem_pass = $pwd;

$this->mem_name = $row[2];

return false;

}

else

return 2;

}

//session_start();

if(!isset($_SESSION['Passed']))

{$_SESSION['Passed'] = False;

}

if($_SESSION['Passed']==False)

{//读取从表单传递过来的身份数据

$mem_user = $_POST['mem_user'];

$mem_pass = $_POST['mem_pass'];

if($mem_user == "")

$Errmsg = "请输入用户名和密码";

else {

if($user1->verify($mem_user, $mem_pass))

{

if($user1->verify($mem_user, $mem_pass) == 2)

$Errmsg = "密码不正确";

else

$Errmsg = "用户名不存在";

}

else{ // 登录成功

$_SESSION['Passed'] = True;

$_SESSION['mem_user'] = $mem_user;

$_SESSION['mem_name'] = $user1->mem_name;

//$_SESSION['mem_name'] = $row[2];

}

}

}

if(!$_SESSION['Passed']) {

?>

exit("");

}

?>

3 小结

随着时代的进步,计算机在人们的生活中已经得到了越来越多的普及,在生活的各个方面都可以看到计算机及网络的应用。计算机的应用领域已渗透到社会的各行各业,正在改变着传统的工作、学习和生活方式,推动着社会的发展,本文所设计的在线投稿系统定会给工作带来方便,提高工作效率。

上一篇:基于Spring+Hibernate的权限管理组件设计与实... 下一篇:基于J2EE的项目评奖系统的设计与实现