PHP实现简单的新闻发布系统实例


Posted in PHP onJuly 28, 2015

本文实例讲述了PHP实现简单的新闻发布系统。分享给大家供大家参考。具体如下:

本人小白,一直在公司用模板和框架写PHP,发现有时候连基本的sql语句都忘记了,所以有空想把PHP基础复习下,巩固下。分页和搜索,以及排序,还没写,后期继续更新...(代码修改:添加搜索和分页功能)

articlePublish.html:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
 <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf8">
<title>Insert title here</title>
</head>
<body bgcolor="#ccc">
 <form name="article" method="post" action="articlePublishDo.php" style="margin:5px 500px;">
   <h1>发布新闻系统</h1>
  标题:<input type="text" name="title"/><br/>
  内容:<textarea cols=30 rows=5 name="content"></textarea><br/><br/>
   <input type="submit" value="发布新闻"/>
 </form>
</body>
</html>

articlePublishDo.php:

<?php
 header("content-type:text/html;charset=utf8");
 date_default_timezone_set('Asia/Shanghai');
 $title=trim($_POST['title']);
 $content=trim($_POST['content']);
 $time=date("y-m-d H:i:s");
 require_once 'init.php';
 $sql="insert into article(title,content,create_time) values('$title','$content','$time')";
 //echo $sql;
 $re=mysql_query($sql);//执行sql语句
 if($re){
  echo "发布成功";
  echo '<a href="articleList.php">返回文章列表</a>';
 }else{
  echo "发布失败";
  echo '<a href="articleList.php">返回文章列表</a>';
 }
 mysql_close();//关闭数据库

articleList.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf8">
<title>Insert title here</title>
</head>
<body>
<!--
 搜索框
-->
 <form method="get" action="articleList.php" style="margin:10px 400px;">
  <input type="text" name="search"/>
  <input type="submit" value="搜索"/>
 </form>
 <br/>
 <table cellspacing="0" cellpadding="0" align="center" bgcolor="#ccc" width=500 >
 <a href="articlePublish.html" style="padding:20px 30px">返回发布文章</a>
  <tr>
   <th>编号</th>
   <th>文章标题</th>
   <th>文章内容</th>
   <th>编辑文章</th>
  </tr>
  <?php
   require_once 'init.php';
   /**
    * 搜索
    */
   $keyword=$_GET['search'];
   /*分页*/
   $sql="select count(*) from article where title like '%$keyword%' or content like '%$keyword%'";
   $res=mysql_query($sql);
   //$count= (int)mysql_num_rows($result);
   $arr=mysql_fetch_assoc($res);
   while(list($key,$val)=each($arr)){
    $count = (int)$val; 
   }
   //echo $count;
   $pageSize=4;
   $page=floor($count/$pageSize)+1;//总页数$page
   echo $page;
   //echo $page;
   if(isset($_GET['page']))
   {
    //$currentPage = $_GET['page'];
    if($_GET['page'] <=1){
     $currentPage = 1;
    }elseif ($_GET['page'] >= $page){
     $currentPage = $page-1;
    }else{
     $currentPage = $_GET['page'];
    }
   }else
   {
    $currentPage=1;
   }
   $start = ($currentPage-1)*$pageSize;
   $sql="select id,title,content from article where title like '%$keyword%' or content like '%$keyword%' limit $start,$pageSize";
   //echo $sql;
   $re=mysql_query($sql);//执行sql语句
   while($arr=mysql_fetch_assoc($re)){
  ?> 
    <tr>
     <td align="center" style="border:1px solid #000"><?php echo $arr['id'];?></td>
     <input type="hidden" name="id" value="<?php echo $arr['id'];?>"/>
     <td align="center" style="border:1px solid #000"><?php echo $arr['title'];?></td>
     <td align="center" style="border:1px solid #000"><?php echo $arr['content'];?></td>
     <td align="center" style="border:1px solid #000">
      <a href="articleEdit.php?id=<?php echo $arr['id']?>"><font color="red">修改</font></a>
      <a href="articleDelete.php?id=<?php echo $arr['id']?>"><font color="red">删除</font></a>
     </td>
    </tr>
  <?php 
    }
   mysql_close();//关闭数据库
  ?>
 </table>
 <div style="margin:20px 400px;">
  共<?php echo $page?>页 |查到<?php echo $count;?>条记录
  当前第<?php echo $_GET['page']?>页|
  <a href="articleList.php?page=1&search=<?php echo $keyword?>">首页</a>
  <a href="articleList.php?page=<?php echo ($currentPage-1)?>&search=<?php echo $keyword?>">|上一页</a>
  <a href="articleList.php?page=<?php echo ($currentPage+1)?>&search=<?php echo $keyword?>">|下一页</a>
  <a href="articleList.php?page=<?php echo $page?>&search=<?php echo $keyword?>">|末页</a>
 </div>
</body>
</html>

articleEdit.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
 <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf8">
<title>Insert title here</title>
</head>
<body bgcolor="#ccc">
<?php 
   $id=(int)$_GET['id'];
   require_once 'init.php';
   $sql="select id,title,content from article where id = '$id'";
   //echo $sql;
   $re=mysql_query($sql);//执行sql语句
   $arr=mysql_fetch_assoc($re);
   //var_dump($arr);
   mysql_close();//关闭数据库
    
?>
 <form name="article" method="post" action="articleUpdate.php" style="margin:5px 500px;">
   <h1>文章发布系统</h1>
   <input type="hidden" name="id" value="<?php echo $arr['id']?>"/><br/>
  标题:<input type="text" name="title" value="<?php echo $arr['title']?>"/><br/>
  内容:<textarea cols=30 rows=5 name="content"><?php echo $arr['content']?></textarea><br/><br/>
   <input type="submit" value="修改文章"/>
   <a href="articleList.php">返回文章列表</a>
   <a href="articlePublish.html">返回发布文章</a>
 </form>
</body>
</html>

articleUpdate.php:

<?php
 header("content-type:text/html;charset=utf8");
 $arr=$_POST;
 $id=(int)$arr['id'];
 require_once 'init.php';
 $sql="update article set title = '$arr[title]',content = '$arr[content]' where id = '$id'";
 //echo $sql;
 $re=mysql_query($sql);//执行sql语句
 //echo $re;
 if($re){
  echo "修改成功";
  echo "<a href='articleList.php'>返回文章列表</a>";
 }else{
  echo "修改失败";
  echo "<a href='articleList.php'>返回文章列表</a>";
 }
 mysql_close();//关闭数据库

articleDelete.php:

<?php
 header("content-type:text/html;charset=utf8");
 require_once 'init.php';
 $id=(int)$_GET['id'];
 $sql="delete from article where id = '$id'";
 //echo $sql;
 $re=mysql_query($sql);
 if($re){
  echo "删除成功";
  echo "<a href='articleList.php'>返回文章列表</a>";
 }else{
  echo "删除失败";
  echo "<a href='articleList.php'>返回文章列表</a>";
 }

init.php:

<?php
 //连接数据库
 //五步走
 //往数据库添加文章
 $conn=mysql_connect("localhost","root","");//链接数据库
 //echo $conn;
 $re=mysql_select_db("article");//选择数据库
 mysql_query("set names utf8");//设置交互字符集

基础知识总结:

文章发布系统

1.articlePublish.html 发布文章页面 提交到articlePublishDo.php页面,执行写入数据库

2.articleList.php 文章列表页面

3.点击编辑,修改文章 提交到 aiticleEdit.php 表单页面(回显)

4.点击修改文章按钮 提交到 articleUpdate.php

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
php htmlentities和htmlspecialchars 的区别
Aug 18 PHP
PHP header()函数使用详细(301、404等错误设置)
Apr 17 PHP
基于PHP中的常用函数回顾
Jul 11 PHP
奉献出一个封装的curl函数 便于调用(抓数据专用)
Jul 22 PHP
PHP批量检测并去除文件BOM头代码实例
May 08 PHP
ThinkPHP文件缓存类代码分享
Apr 22 PHP
文件上传之SWFUpload插件(代码)
Jul 30 PHP
PHP判断上传文件类型的解决办法
Oct 20 PHP
PHP的时间戳与具体时间转化的简单实现
Jun 13 PHP
PHP长网址与短网址的实现方法
Oct 13 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
Jun 16 PHP
关于Laravel参数验证的一些疑与惑
Nov 19 PHP
PHP实现的memcache环形队列类实例
Jul 28 #PHP
如何实现php图片等比例缩放
Jul 28 #PHP
PHP封装CURL扩展类实例
Jul 28 #PHP
php图像处理类实例
Jul 28 #PHP
图文介绍PHP添加Redis模块及连接
Jul 28 #PHP
PHP生成树的方法
Jul 28 #PHP
php计算税后工资的方法
Jul 28 #PHP
You might like
全国FM电台频率大全 - 16 河南省
2020/03/11 无线电
PHP中通过ADO调用Access数据库的方法测试不通过
2006/12/31 PHP
PHP最常用的ini函数分析 针对PHP.ini配置文件
2010/04/22 PHP
PHP使用GIFEncoder类生成的GIF动态图片验证码
2014/07/01 PHP
JS 控制CSS样式表
2009/08/20 Javascript
解决jquery异步按一定的时间间隔刷新问题
2012/12/10 Javascript
给html超链接设置事件不使用href来完成跳
2014/04/20 Javascript
使用upstart把nodejs应用封装为系统服务实例
2014/06/01 NodeJs
touch.js 拖动、缩放、旋转 (鼠标手势)功能代码
2017/02/04 Javascript
深入理解vue.js中的v-if和v-show
2017/06/22 Javascript
讲解vue-router之什么是动态路由
2018/05/28 Javascript
浅谈Webpack打包优化技巧
2018/06/12 Javascript
使用nodejs实现JSON文件自动转Excel的工具(推荐)
2020/06/24 NodeJs
js 数组当前行添加数据方法详解
2020/07/28 Javascript
[04:40]2016个国际邀请赛中国区预选赛场地——华西村观战指南
2016/06/25 DOTA
django rest framework 数据的查找、过滤、排序的示例
2018/06/25 Python
PyCharm鼠标右键不显示Run unittest的解决方法
2018/11/30 Python
解决Python中定时任务线程无法自动退出的问题
2019/02/18 Python
Python中print和return的作用及区别解析
2019/05/05 Python
elasticsearch python 查询的两种方法
2019/08/04 Python
tensorboard实现同时显示训练曲线和测试曲线
2020/01/21 Python
Python实现疫情通定时自动填写功能(附代码)
2020/05/27 Python
pytorch 计算ConvTranspose1d输出特征大小方式
2020/06/23 Python
使用python库xlsxwriter库来输出各种xlsx文件的示例
2020/09/01 Python
通过实例解析Python文件操作实现步骤
2020/09/21 Python
如何使用Django Admin管理后台导入CSV
2020/11/06 Python
分享CSS3制作卡片式图片的方法
2016/07/08 HTML / CSS
HTML5实现分享到微信好友朋友圈QQ好友QQ空间微博二维码功能
2018/01/03 HTML / CSS
uniapp+Html5端实现PC端适配
2020/07/15 HTML / CSS
高中学校对照检查材料
2014/08/31 职场文书
家庭贫困证明书(3篇)
2014/09/15 职场文书
出纳工作检讨书
2014/10/18 职场文书
2014年党建工作汇报材料
2014/10/27 职场文书
二年级语文上册复习计划
2015/01/19 职场文书
mysql 8.0.24 安装配置方法图文教程
2021/05/12 MySQL
Nginx实现负载均衡的项目实践
2022/03/18 Servers