PHP+Mysql 实现数据库的增删改查

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

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");  

原文地址:https://www.cnblogs.com/cckui/p/8283648.html

时间: 2024-10-11 04:14:34

PHP+Mysql 实现数据库的增删改查的相关文章

mysql笔记--数据库基本增删改查 修改表结构

数据库基本增删改查 1. 增-添加/插入数据,insert into 插入哪张表,那些列,什么值, 语句:insert into 表名(列1,列2,列3)values (值1,值2,值3): 可以不按原列的顺序插入,也可以插入部分列,但是值与列要一一对应,不能混乱!!! 一次插入多行数据 : Insert into 表名(列1,列2)values (值1,值2),(值1,值2): 2. 改-更新数据update 更新哪张表,哪些列,哪些值 语句:update 表名 set 列1=值1,列2=值2

MyEclipse10+Jdk1.7+OSGI+MySql实现数据库的增删改查

开发环境: Windows2008R2 64位+MyEclipse10+jdk1.7.0_67+MySql5.5 软件安装:myeclipse-10.0-offline-installer-windows.exe,jdk-7u67-windows-x64.exe,mysql-5.5.28-winx64.msi,mysql-connector-net-6.3.7.msi,Navicat_for_MySQL_11.0.10.exe 问题解决:本文主要是解决创建符合OSGI规范的Eclipse插件时候

【知了堂学习笔记】mysql之数据库的增删改查

一.DDL 1.创建数据库 create database 数据库名 *数据库名不能中文, 不能数字正常英文 , 关键字会自动变大写 2.删除数据库 drop database 数据库名 3.使用数据库 use 数据库名 *如果有很多数据库,要具体使用时,可以手动选择,可以通过语法形式声明使用哪一个 二.操作表 1.创建表 create table 表名(列名1 列1的数据类型 列的约束 ,列名2 列2的数据类型 列的约束) eg:创建一张学生表 CREATE TABLE t_student(

【Hibernate】Hibernate的在Eclipse+Mysql的配置、安装,纯Java,利用Annotation与HQL完成数据库的增删改查

这篇文章有很多槽点,在Hibernate4.x上面用着Hibernate3.x的写法去写.而且程序中放到Eclipse中会有一大堆警告,但是这好歹也在一定程度上完成了Hibernate的入门.毕竟现在很多介绍Hibernate的书籍都是用Hibernate3.x的写法去写.上次那篇<[Hibernate]最简单的Hibernate工程--账号注册系统>(点击打开链接)杂糅Struts的技术其实是不对的.因为Hibernate完成的是,从Java到数据库,从数据库到Java的任务.之后Java与

Windows下安装MySQLdb, Python操作MySQL数据库的增删改查

这里的前提是windows上已经安装了MySQL数据库,且配置完毕,能正常建表能操作.在此基础上只需安装MySQL-python-1.2.4b4.win32-py2.7.exe就ok了,只有1M多.这个有点类似jdbc里的那个jar包. 下载链接:http://sourceforge.net/projects/mysql-python/ , 百度云盘 :http://pan.baidu.com/s/1dDgnfpR 密码:7bna 接着import MySQLdb就能使用了,下面给出测试代码:

java jdbc 连接mysql数据库 实现增删改查

好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打交道非常基础的一个知识,也是比较接近底层的,在实际的工作中大家用得更多的其实还是比较成熟的框架,例如Hibernate.Mybatis. 但是作为这些成熟框架的底层的jdbc却也是我们应该去掌握的,只有了解了jdbc的增删改查,这样在以后如果有兴趣去研究Hibernate或者Mybatis的源代码的

mysql数据库的增删改查语句

连接命令:mysql -h[主机地址] -u[用户名] -p[用户密码] 创建数据库:create database [库名] 显示所有数据库: show databases; 打开数据库:use [库名] 当前选择的库状态:SELECT DATABASE(); 创建数据表:CREATE TABLE [表名]([字段名] [字段类型]([字段要求]) [字段参数], ......); 显示数据表字段:describe 表名; 当前库数据表结构:show tables; =============

MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4085684.html 联系方式:[email protected] [正文] 这一周状态不太好,连续打了几天的点滴,所以博客中断了一个星期,现在继续. 我们在之前的几篇文章中学习了JDBC对数据库的增删改查.其实在实际开发中,一般都是使用第三方工具类,但是只有将之前的基础学习好了,在使用开源工具的

【Mysql】Java中对Mysql数据库的增删改查、Java的System类

这部分也是所谓JDBC.网站数据源的内容,把名字弄得很高深似得,实际上只是Java中对Mysql数据库的增删改查的内容.非常简单,之前写了这么多Mysql的内容,没好好总结一下,实在是不应该.今天就实现一个Java中对Mysql数据库的增删改查,随便带点Java取出当前系统的系统名与系统时间的知识,完成一个还算有点意思的小例子. 一.基本目标 首先,在Mysql数据库中有一张名为testtable的空表,id为自增列,username,class都是文本列,但是class里面都存放数字,也就是整