首页 编程设计PHP正文

PHP+Mysql 实现数据库增删改查:新闻列表的后台管理

仁镜 PHP 2020-04-05 21:13:09 1582 0 PHP

PHP和Mysql可以对数据库进行简单的增删改查,本文介绍了新闻列表的后台管理。

项目地址

https://github.com/caochangkui/php-mysql-test

Mysql数据库创建

创建一个新闻列表的数据库:

1. 查询数据库

1.1. 创建文件dbconfig.php,保存常量

<?php  
define("HOST","localhost");  
define("USER","root");  
define("PASS","********");define("DBNAME","news");

1.2. 创建入口文件index.html(连接数据库、查询数据)

<!DOCTYPE html><html><head>
	<meta charset="UTF-8">
	<title>新闻后台管理系统</title></head><style type="text/css">.wrapper {width: 1000px;margin: 20px auto;}h2 {text-align: center;}.add {margin-bottom: 20px;}.add a {text-decoration: none;color: #fff;background-color: green;padding: 6px;border-radius: 5px;}td {text-align: center;}</style><body>
	<div class="wrapper">
		<h2>新闻后台管理系统</h2>
		<div class="add">
			<a href="addnews.html">增加新闻</a>
		</div>
		<table width="960" 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);                // 编码设置
                mysql_set_charset('utf8',$link);				// 3. 从DBNAME中查询到news数据库,返回数据库结果集,并按照addtime降序排列  
				$sql = 'select * from news order by id asc';                // 结果集
                $result = mysql_query($sql,$link);                // var_dump($result);die;

				// 解析结果集,$row为新闻所有数据,$newsNum为新闻数目
				$newsNum=mysql_num_rows($result);  

				for($i=0; $i<$newsNum; $i++){
					$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['autor']}</td>";					echo "<td>{$row['addtime']}</td>";					echo "<td>{$row['content']}</td>";					echo "<td>
							<a href='javascript:del({$row['id']})'>删除</a>
							<a href='editnews.php?id={$row['id']}'>修改</a>
						  </td>";					echo "</tr>";
				}				// 5. 释放结果集
				mysql_free_result($result);
				mysql_close($link);			?>
		</table>
	</div>
	
	<script type="text/javascript">
		function del (id) {			if (confirm("确定删除这条新闻吗?")){				window.location = "action-del.php?id="+id;
			}
		}	</script></body></html>

页面如图:


2. 增加新闻

2.1 点击增加按钮,通过页面addnews.html添加数据

<!DOCTYPE html>  <html>  <head lang="en">  
    <meta charset="UTF-8">  
    <title>添加新闻</title>  </head><style type="text/css">
	form{		margin: 20px;
	}</style><body><form action="action-addnews.php" method="post">  
    <label>标题:</label><input type="text" name="title">  
    <label>关键字:</label><input type="text" name="keywords">  
    <label>作者:</label><input type="text" name="autor">  
    <label>发布时间:</label><input type="date" name="addtime">  
    <label>内容:</label><input type="text" name="content">  
    <input type="submit" value="提交">  </form>  </body>  </html>

2.2 创建处理增加新闻的服务端文件action-addnews.php

<?php// 处理增加操作的页面 require "dbconfig.php";// 连接mysql$link = @mysql_connect(HOST,USER,PASS) or die("提示:数据库连接失败!");// 选择数据库mysql_select_db(DBNAME,$link);// 编码设置mysql_set_charset('utf8',$link);// 获取增加的新闻$title = $_POST['title'];
$keywords = $_POST['keywords'];
$autor = $_POST['autor'];
$addtime = $_POST['addtime'];
$content = $_POST['content'];// 插入数据mysql_query("INSERT INTO news(title,keywords,autor,addtime,content) VALUES ('$title','$keywords','$autor','$addtime','$content')",$link) or die('添加数据出错:'.mysql_error()); 
header("Location:demo.php");

3. 删除新闻

点击删除按钮,通过服务端文件action-del.php进行删除处理

<?php// 处理删除操作的页面 require "dbconfig.php";// 连接mysql$link = @mysql_connect(HOST,USER,PASS) or die("提示:数据库连接失败!");// 选择数据库mysql_select_db(DBNAME,$link);// 编码设置mysql_set_charset('utf8',$link);

$id = $_GET['id'];//删除指定数据  mysql_query("DELETE FROM news WHERE id={$id}",$link) or die('删除数据出错:'.mysql_error()); 
// 删除完跳转到新闻页header("Location:demo.php");

4. 修改新闻

4.1 点击修改按钮,跳转到文件editnews.php进行修改处理

<!DOCTYPE html><html><head>
    <meta charset="UTF-8">
    <title>修改新闻</title></head><body><?php
    require "dbconfig.php";

    $link = @mysql_connect(HOST,USER,PASS) or die("提示:数据库连接失败!");
    mysql_select_db(DBNAME,$link);
    mysql_set_charset('utf8',$link);
    
    $id = $_GET['id'];
    $sql = mysql_query("SELECT * FROM news WHERE id=$id",$link);
    $sql_arr = mysql_fetch_assoc($sql); 

?><form action="action-editnews.php" method="post">
    <label>新闻ID: </label><input type="text" name="id" value="<?php echo $sql_arr['id']?>">
    <label>标题:</label><input type="text" name="title" value="<?php echo $sql_arr['title']?>">
    <label>关键字:</label><input type="text" name="keywords" value="<?php echo $sql_arr['keywords']?>">
    <label>作者:</label><input type="text" name="autor" value="<?php echo $sql_arr['autor']?>">
    <label>发布时间:</label><input type="date" name="addtime" value="<?php echo $sql_arr['addtime']?>">
    <label>内容:</label><input type="text" name="content" value="<?php echo $sql_arr['content']?>">
    <input type="submit" value="提交"></form></body></html>

4.2 通过服务端文件action-editnews.php进行修改处理

通过服务端文件action-editnews.php进行修改处理

<?php// 处理编辑操作的页面 require "dbconfig.php";// 连接mysql$link = @mysql_connect(HOST,USER,PASS) or die("提示:数据库连接失败!");// 选择数据库mysql_select_db(DBNAME,$link);// 编码设置mysql_set_charset('utf8',$link);// 获取修改的新闻$id = $_POST['id'];
$title = $_POST['title'];
$keywords = $_POST['keywords'];
$autor = $_POST['autor'];
$addtime = $_POST['addtime'];
$content = $_POST['content'];// 更新数据mysql_query("UPDATE news SET title='$title',keywords='$keywords',autor='$autor',addtime='$addtime',content='$content' WHERE id=$id",$link) or die('修改数据出错:'.mysql_error()); 
header("Location:demo.php");


版权声明

1.本站大部分下载资源收集于网络,不保证其完整性以及安全性,请下载后自行测试。
2.本站资源仅供学习和交流使用,版权归资源原作者所有,请在下载后24小时之内自觉删除。
3.若作商业用途,请购买正版,由于未及时购买和付费发生的侵权行为,与本站无关。
4.若内容涉及侵权或违法信息,请联系本站管理员进行下架处理,邮箱ganice520@163.com(本站不支持其他投诉反馈渠道,谢谢合作)

本文链接:http://www.apod.cc/index.php/post/326.html

发表评论

评论列表(0人评论 , 1582人围观)
☹还没有评论,来说两句吧...