PHP基础示例:用PHP+Mysql编写简易新闻管理系统
实现目标:使用php和mysql操作函数实现一个新闻信息的发布、浏览、修改和删除操作
实现步骤:
一、创建数据库和表
1.创建数据库和表:newsdb
2.创建表格:news
字段:新闻id,标题,关键字,作者,发布时间,新闻内容
二、创建php文件编写代码(以下为要创建的php文件及其用途)
dbconfig.php 公共配置文件,数据库连接配置信息
menu.php 网站公共导航栏
index.php 浏览新闻的文件(此为首页)
add.php 发布新闻表单页
edit.php 编辑新闻的表单页
action.php 执行新闻信息添加、修改、删除等操作的动作(后台)
**********************************************************************
以下为数据库创建语句:
- create database newsdb;//创建数据库语句
- create table news(
- id int unsigned not null auto_increment primary key,
- title varchar(64) not null,
- keywords varchar(64) not null,
- author varchar(16) not null,
- addtime int unsigned not null,
- content text not null
- );//创建表语句
数据库创建语句
***********************************************************************
以下为dbconfig.php文件代码
- <?php
- //公共信息配置
- //数据库配置信息
- define("HOST","localhost"); //主机名
- define("USER","root"); //账号
- define("PASS","root"); //密码
- define("DBNAME","newsdb"); //数据库名
- ?>
以下为menu.php文件代码(一开始浏览的页面,添加新闻后以index页面为主)
- <h2>新闻管理系统</h2>
- <a href="index.php">浏览新闻</a>
- <a href="add.php">发布新闻</a>
- <hr width="90%"/>
以下为add.php文件代码(增加具体代码)
- <html>
- <head>
- <title>新闻管理系统</title>
- </head>
- <body>
- <center>
- <?php include("menu.php");//导入导航栏 ?>
- <h3>发布新闻</h3>
- <form action = "action.php?action=add" method="post">
- <table width="320" border="1">
- <tr>
- <td align="right">标题:</td>
- <td><input type="text" name="title"/></td>
- </tr>
- <tr>
- <td align="right">关键字:</td>
- <td><input type="text" name="keywords"/></td>
- </tr>
- <tr>
- <td align="right">作者:</td>
- <td><input type="text" name="author"/></td>
- </tr>
- <tr>
- <td align="right" valign="top">内容:</td>
- <td><textarea cols="25" rows="5" name="content"></textarea></td>
- </tr>
- <tr>
- <td colspan="2" align="center">
- <input type="submit" value="添加"/>
- <input type="reset" value="重置"/>
- </td>
- </tr>
- </table>
- </form>
- </center>
- </body>
- </html>
add.php文件代码
以下为action.php文件代码(增删改实现代码)
- <?php
- //这是一个信息增、删和改操作的处理页面
- //1.导入配置文件
- require("dbconfig.php");
- //2.连接MYSQL,并选择数据库
- $link=@mysql_connect(HOST,USER,PASS) or die("数据库连接失败!");
- mysql_select_db(DBNAME,$link);
- //3.根据需要action值,来判断所属操作,执行对应的代码
- switch($_GET["action"])
- {
- case "add": //执行添加操作
- //1.获取要添加的信息,并补充其他信息
- $title = $_POST["title"];
- $keywords = $_POST["keywords"];
- $author = $_POST["author"];
- $content = $_POST["content"];
- $addtime = time();
- //2.座信息过滤(省略)
- //3.拼装添加SQL语句,并执行添加操作
- $sql = "insert into news values(null,'{$title}','{$keywords}','{$author}','{$addtime}','{$content}')";
- mysql_query($sql,$link);
- //4.判断是否成功
- $id=mysql_insert_id($link);//获取刚刚添加信息的自增id号值
- if($id>0)
- {
- echo "<h3>新闻信息添加成功!</h3>";
- }else
- {
- echo "<h3>新闻信息添加失败!</h3>";
- }
- echo "<a href='javascript:window.history.back();'>返回</a> ";
- echo "<a href='index.php'>浏览新闻</a>";
- break;
- case "del": //执行删除操作
- //1.获取要删除的id号
- $id=$_GET['id'];
- //2.拼装删除sql语句,并执行删除操作
- $sql = "delete from news where id={$id}";
- mysql_query($sql,$link);
- //3.自动跳转到浏览新闻页面
- header("Location:index.php");
- break;
- case "update": //执行添加操作
- //1.获取要修改的信息
- $title = $_POST['title'];
- $keywords = $_POST['keywords'];
- $author = $_POST['author'];
- $content = $_POST['content'];
- $id = $_POST['id'];
- //2.过滤要修改的信息(省略)
- //3.拼装修改sql语句,并执行修改操作
- $sql = "update news set title='{$title}',keywords='{$keywords}',author='{$author}',content='{$content}' where id = {$id} ";
- mysql_query($sql,$link);
- //4.跳转回浏览界面
- header("Location:index.php");
- break;
- }
- //4.关闭数据库连接
- mysql_close($link);
action.php文件代码
以下为index.php文件代码(在此页面浏览新闻,并对新闻信息进行增删改操作)
- <html>
- <head>
- <title>新闻管理系统</title>
- <script type="text/javascript">
- function dodel(id)
- {
- if(confirm("确定要删除吗"))
- {
- window.location="action.php?action=del&id="+id;
- }
- }
- </script>
- </head>
- <body>
- <center>
- <?php include("menu.php");//导入导航栏 ?>
- <h3>浏览新闻</h3>
- <table width="800" border="1">
- <tr>
- <th>新闻id</th>
- <th>新闻标题</th>
- <th>关键字</th>
- <th>作者</th>
- <th>发布时间</th>
- <th>新闻内容</th>
- <th>操作</th>
- </tr>
- <?php
- //1.导入配置文件
- require("dbconfig.php");
- //2.连接MYSQL,选择数据库
- $link = @mysql_connect(HOST,USER,PASS) or die("数据库连接失败!");
- mysql_select_db(DBNAME,$link);
- //3.执行查询,并返回结果集
- $sql = "select * from news order by addtime desc";
- $result = mysql_query($sql,$link);
- //4.解析结果集,并遍历
- while($row = mysql_fetch_assoc($result))
- {
- echo "<tr>";
- echo "<td>{$row['id']}</td>";
- echo "<td>{$row['title']}</td>";
- echo "<td>{$row['keywords']}</td>";
- echo "<td>{$row['author']}</td>";
- echo "<td>".date("Y-m-d",$row['addtime'])."</td>";
- echo "<td>{$row['content']}</td>";
- echo "<td>
- <a href='javascript:dodel({$row['id']})'>删除</a>
- <a href='edit.php?id={$row['id']}'>修改</a></td>";
- echo "</tr>";
- }
- //5.释放结果集
- mysql_free_result($result);
- mysql_close($link);
- ?>
- </table>
- </center>
- </body>
- </html>
index.php文件代码
以下为edit.php文件代码(编辑具体代码)
- <html>
- <head>
- <title>新闻管理系统</title>
- </head>
- <body>
- <center>
- <?php
- include("menu.php");//导入导航栏
- //1.导入配置文件
- require("dbconfig.php");
- //2.连接MYSQL数据库、选择数据库
- $link = @mysql_connect(HOST,USER,PASS) or die("数据库连接失败!");
- mysql_select_db(DBNAME,$link);
- //3.获取要修改信息的id号,并拼装查看sql语句,执行查询,获取要修改的信息
- $sql = "select *from news where id={$_GET['id']}";
- $result = mysql_query($sql,$link);
- //4.判断是否获取到了要修改的信息
- if($result &&mysql_num_rows($result)>0)
- {
- $news = mysql_fetch_assoc($result);
- }else
- {
- die("没有找到要修改的信息!");
- }
- ?>
- <h3>编辑新闻</h3>
- <form action = "action.php?action=update" method="post">
- <input type="hidden" name="id" value="<?php echo $news['id']; ?>" />
- <table width="320" border="1">
- <tr>
- <td align="right">标题:</td>
- <td><input type="text" name="title" value="<?php echo $news['title']; ?>" /></td>
- </tr>
- <tr>
- <td align="right">关键字:</td>
- <td><input type="text" name="keywords" value="<?php echo $news['keywords']; ?>" /></td>
- </tr>
- <tr>
- <td align="right">作者:</td>
- <td><input type="text" name="author" value="<?php echo $news['author']; ?>" /></td>
- </tr>
- <tr>
- <td align="right" valign="top">内容:</td>
- <td><textarea cols="25" rows="5" name="content"><?php echo $news['content']; ?></textarea></td>
- </tr>
- <tr>
- <td colspan="2" align="center">
- <input type="submit" value="编辑"/>
- <input type="reset" value="重置"/>
- </td>
- </tr>
- </table>
- </form>
- </center>
- </body>
- </html>
edit.php文件代码
PHP基础示例:用PHP+Mysql编写简易新闻管理系统的更多相关文章
- PHP基础示例:用PHP+Mysql编写简易新闻管理系统[转]
实现目标:使用php和mysql操作函数实现一个新闻信息的发布.浏览.修改和删除操作 实现步骤: 一.创建数据库和表 1.创建数据库和表:newsdb 2.创建表格:news 字段:新闻id,标题,关 ...
- Javascript基础示例:用JS写简易版贪吃蛇(面向对象)
废话不多说,代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> & ...
- 简易用户管理系统-前端实现(表单&提交请求&button$基础)
laravel框架编写简易用户管理系统,前端Layui框架. 1.动态生成列表项 实现效果 PHP后台传入用户对象($users). 前端页面接收数据传入table. 逻辑就是在生成表格时,遍历传来的 ...
- C# 编写简易 ASP.NET Web 服务器
C# 编写简易 ASP.NET Web 服务器 你是否有过这样的需求——想运行 ASP.NET 程序,又不想安装 IIS 或者 Visual Studio?我想如果你经常编写 ASP.NET 程序的话 ...
- Mysql编写定时任务事件
原文:Mysql编写定时任务事件 场景: 例如:某系统,用户每天只能拥有一次的抽奖机会,抽过后当天就不可再抽,但是过了24:00点后用户就重新拥有一次抽奖机会.像这种需要数据库定时对某个字段进行更新操 ...
- Hadoop基础-MapReduce入门篇之编写简单的Wordcount测试代码
Hadoop基础-MapReduce入门篇之编写简单的Wordcount测试代码 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本文主要是记录一写我在学习MapReduce时的一些 ...
- MySQL基础知识:创建MySQL数据库和表
虚构一个微型在线书店的数据库和数据,作为后续MySQL脚本的执行源,方便后续MySQL和SQL的练习. 在虚构这个库的过程中,主要涉及的是如何使用命令行管理 MySQL数据库对象:数据库.表.索引.外 ...
- 【MIDO】乐理基础 与 python - 从零开始到编写柱式和弦与分解和弦
本篇文章从律学开始,从十二平均律出发,介绍一些基础必要的乐理知识,然后编写python文件,输出和弦音频文件. 乐理知识部分: 一.律学简述(temperament) 1.概论 律学,又称&q ...
- Membership三步曲之入门篇 - Membership基础示例
Membership 三步曲之入门篇 - Membership基础示例 Membership三步曲之入门篇 - Membership基础示例 Membership三步曲之进阶篇 - 深入剖析Pro ...
随机推荐
- ORA-00845: MEMORY_TARGET not supported
Enabling Automatic Memory Management alter system set memory_max_target=50G scope=spfile; alter syst ...
- Gora快速入门
概述 Gora是apache的一个开源项目. The Apache Gora open source framework provides an in-memory data model and pe ...
- requestAnimationFrame动画方法
一.动画方式 在HTML5/CSS3时代,实现动画的方式有许多种: 你可以用css3的animation和@keyframes: 可以用css3的transition: 还可以用原始的setTimeo ...
- 163k地方门户网站系统自动审核信息脚本
本代码实现对163k地方门户网站系统发布信息的自动审核,以及对内容中链接全过滤 软件安装 Python 安装 http://www.python.org/download/ pymssql安装 htt ...
- XJOI网上同步训练DAY2 T2
[问题描述] 火车司机出秦川跳蚤国王下江南共价大爷游长沙.每个周末勤劳的共价大爷都会开车游历长沙市. 长沙市的交通线路可以抽象成为一个
- [置顶] Responder一点也不神秘————iOS用户响应者链完全剖析
这篇文章想跟大家分享的主旨是iOS捕获用户事件的各种情况,以及内部封装的一些特殊事件. 我们先从UIButton谈起,UIButton大家使用的太多了,他特殊的地方就在于其内置的普通Default/高 ...
- Android和FTP服务器交互,上传下载文件(实例demo)
今天同学说他备份了联系人的数据放在一个文件里,想把它存到服务器上,以便之后可以进行下载恢复..于是帮他写了个上传,下载文件的demo 主要是 跟FTP服务器打交道-因为这个东东有免费的可以身亲哈 1. ...
- MLC固态硬盘,与入量是3000次P/E
固态硬盘是什么,固态硬盘寿命有多长 SSD泛指使用闪存芯片组成的SSD固态硬盘,是使用FLASH闪存颗粒作为存储单元,不再使用传统的机械存储方法,使用模拟的方式虚拟出传统 硬盘存取方式和扇区等,也可以 ...
- Linux服务器挂死案例分析
问题现象: 在linux服务器上运行一个指定的脚本时,就会出现无数个相同进程的,而且不停的产生,杀也杀不掉,最后系统就陷入死循环,无法登陆,只能人工去按机器的电源键才可以.这够崩溃的吧? 问题分析过程 ...
- 2D丛林逃生
游戏介绍: 游戏地图采用二维数组: 每一个小块(Piece)类 上面有一个类型(StuffType)用于判断该小块上面站着的是什么 怪物,玩家,血瓶等等 怪物AI: ...