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 相关文章推荐
批量修改RAR文件注释的php代码
Nov 20 PHP
php获取本地图片文件并生成xml文件输出具体思路
Apr 27 PHP
定义php常量的详解
Jun 09 PHP
解析在apache里面给php写虚拟目录的详细方法
Jun 24 PHP
PHP翻页跳转功能实现方法
Nov 30 PHP
PHP函数nl2br()与自定义函数nl2p()换行用法分析
Apr 02 PHP
PHP获取文本框、密码域、按钮的值实例代码
Apr 19 PHP
PHP用户注册邮件激活账户的实现代码
May 31 PHP
PHP中quotemeta()函数的用法讲解
Apr 04 PHP
laravel中数据显示方法(默认值和下拉option默认选中)
Oct 11 PHP
关于laravel模板中生成URL的几种模式总结
Oct 18 PHP
利用PHP计算有多少小于当前数字的数字方法示例
Aug 26 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
sae使用smarty模板的方法
2013/12/17 PHP
yii2中的rules 自定义验证规则详解
2016/04/19 PHP
php实现解析xml并生成sql语句的方法
2018/02/03 PHP
实例化php类时传参的方法分析
2020/06/05 PHP
js 获取中文拼音,Select自动匹配字母获取值的代码
2009/09/23 Javascript
document.onreadystatechange事件的用法分析
2009/10/17 Javascript
JQuery获取浏览器窗口内容部分高度的代码
2012/02/24 Javascript
javascript获得网页窗口实际大小的示例代码
2013/09/21 Javascript
jQuery 获取兄弟元素的几种不错方法
2014/05/23 Javascript
jquery的总体架构分析及实现示例详解
2014/11/08 Javascript
Jquery Ajax Error 调试错误的技巧
2015/11/20 Javascript
js方法数据验证的简单实例
2016/09/17 Javascript
AngularJS页面传参的5种方式
2017/04/01 Javascript
详解ES6之async+await 同步/异步方案
2017/09/19 Javascript
Angular实现搜索框及价格上下限功能
2018/01/19 Javascript
JS字典Dictionary类定义与用法示例
2019/02/01 Javascript
js针对图片加载失败的处理方法分析
2019/08/24 Javascript
js中addEventListener()与removeEventListener()用法案例分析
2020/03/02 Javascript
react-native 实现购物车滑动删除效果的示例代码
2021/01/15 Javascript
python Socket之客户端和服务端握手详解
2017/09/18 Python
python 实现对数据集的归一化的方法(0-1之间)
2018/07/17 Python
Django教程笔记之中间件middleware详解
2018/08/01 Python
python自动化测试之如何解析excel文件
2019/06/27 Python
对Pytorch神经网络初始化kaiming分布详解
2019/08/18 Python
基于python实现雪花算法过程详解
2019/11/16 Python
浅谈移动端网页图片预加载方案
2018/11/05 HTML / CSS
世界上最大的字体市场:MyFonts
2020/01/10 全球购物
竞选班干部演讲稿500字
2014/08/20 职场文书
教育系统干部作风整顿心得体会
2014/09/09 职场文书
离婚协议书范本(通用篇)
2014/11/30 职场文书
2014幼儿园卫生保健工作总结
2014/12/05 职场文书
2015年人民调解工作总结
2015/05/18 职场文书
nginx限制并发连接请求数的方法
2021/04/01 Servers
HTML基础详解(下)
2021/10/16 HTML / CSS
详细聊聊vue中组件的props属性
2021/11/02 Vue.js
MySQL 原理与优化之Update 优化
2022/08/14 MySQL