1、从数据库出发,先建立测试数据,这里使用的MYSQL,通过脚本模式创建测试数据。

SET NAMES UTF8;
DROP DATABASE IF EXISTS disk;
CREATE DATABASE disk CHARSET=UTF8;
USE disk;
CREATE TABLE udisk(
uid INT PRIMARY KEY AUTO_INCREMENT,
uname VARCHAR(24),
pic VARCHAR(60),
price FLOAT(9,2),
addedTime BIGINT
);
INSERT INTO udisk VALUES
(NULL,'金士顿 SE9H','img/1.jpg','49.90','1234567890123'),
(NULL,'金士顿 DT100G3','img/2.jpg','47.90','1234567890123'),
(NULL,'权尚 Transshow','img/3.jpg','39.90','1234567890123'),
(NULL,'闪迪(SanDisk)酷铄(CZ73) ','img/4.jpg','79.90','1234567890123'),
(NULL,'金士顿 32GB','img/5.jpg','99.90','1234567890123');

2、创建 init.php 主要用于保存php连接数据库的相关代码。

<?php
/*数据库链接初始化页面*/
$conn = mysqli_connect('127.0.0.1','root','','tarena',3306);
$sql = 'SET NAMES UTF8';
mysqli_query($conn,$sql);

3、建立 add.php 实现php操作数据库添加数据功能。

<?php
@$uname = $_REQUEST['uname'] or die('uname required');
@$pic = $_REQUEST['pic'] or die('pic required');
@$price = $_REQUEST['price'] or die('price required'); require('disk_inti.php');
$addTime = time()*1000;
$sql = "INSERT INTO udisk VALUES(NULL,'$uname','$pic','$price','$addTime')";
$result = mysqli_query($conn,$sql);
if($result===false){
echo "添加失败,请检查SQL语句";
}else{
echo "添加成功,商品编号为".mysqli_insert_id($conn);
echo "<a href='udisk_select.php'>查看所以U盘</a>";
}

4、创建用于实现添加功能的视图(add.html文件)  一个简单的数据添加入口  测试用。

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>...</title>
</head>
<body>
<form action="disk_add.php">
U盘名称:<input name="uname"><br>
图片路径:<input name="pic"><br>
U盘价格:<input name="price">
<input type="submit">
</form>
</body>
</html>

  

5、使用PHP创建数据查找功能主界面 并使用JS绑定删除功能

<?php    //  执行SQL查找语句
require('disk_inti.php');
$sql = "SELECT * FROM udisk";
$result = mysqli_query($conn,$sql);
if($result===false){ // 判断查找结果
echo "数据查询失败,请检查SQL语句";
}else{
$list = mysqli_fetch_all($result,1);
}
//var_dump($list);
?>
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>...</title>
<style>
div {
width:250px;
float:left;
margin-right:80px;
margin-top:25px;
padding:0 25px;
position:relative;
border:1px solid #aaa;
border-radius:3px;
}
div img {
width:100%
}
div a {
position:absolute;
top:0;
right:10px;
}
</style>
</head>
<body>
<h3>U盘列表</h3>
<?php //抓取数据 响应到视图中
foreach($list as $d){
echo "<div><img src=$d[pic]><span>价格:$d[price]</span><p>$d[uname]</p><a href=$d[uid]>X</a></div>";
}
?>
</body>
<script> //为X按钮绑定事件
var a = document.querySelectorAll("div a");
console.log(a);
for(var i = 0 ; i<a.length ; i++){
a[i].addEventListener("click",function(e){
e.preventDefault();
if(confirm("确定要删除此商品?"))
{ location.href="udisk_delete.php?uid="+this.href.slice(-1);}
});
}
</script>
</html>

  

 6、创建delete.php 补全删除功能

<?php
@$uid = $_REQUEST['uid'] or die('uid required');
require('disk_inti.php');
$sql ="DELETE FROM udisk WHERE uid=$uid";
$result = mysqli_query($conn,$sql);
if($result===false){
echo "删除失败";
}else{
echo "<h3>删除成功</h3>";
echo "被删除的记录数:".mysqli_affected_rows($conn);
echo "<a href='udisk_select.php'>返回U盘列表</a>";
}

  

使用PHP操作SQL 完成简单的CURD操作的更多相关文章

  1. 【知识必备】ezSQL,最好用的数据库操作类,让php操作sql更简单~

    最近用php做了点小东东,用上了ezSQL,感觉真的很ez,所以拿来跟大家分享一下~ ezSQL是一个非常好用的PHP数据库操作类.著名的开源博客WordPress的数据库操作就使用了ezSQL的My ...

  2. ThinkPHP中简单的CURD操作

    前言 我们通过一个简答例子来简述CURD的操作.首先看一下数据库的样子,其中id为自增行,其它是varchar 一.查询操作 首先,创建在Controller文件夹下创建一个User控制器,在该控制器 ...

  3. Asp.Net中对操作Sql Server 简单处理的SqlDB类

    好久不接触这些闲暇时间回顾一下以前的基础.因为平常使用的时候都是直接调用SqlDB.dll这个类.先看这个类的结构 纸上得来终觉浅,绝知此事要躬行.个人觉得里面的标准操作就是对数据库增删查改 .特别适 ...

  4. EF简单的CURD操作

    /// <summary> /// EF添加数据 /// </summary> /// <param name="sender"></pa ...

  5. solr的客户端操作:使用solrj进行curd操作

    导入相关的jar包 <dependency> <groupId>org.apache.solr</groupId> <artifactId>solr-s ...

  6. thinkphp 连接数据库 & 实例化模型操作 (下接thinkphp CURD 操作)/慕课

    7.1 连接数据库 (06:15) 1 7.2实例化模型 1 1.实例化基础模型 2 2. 实例化用户自定义模型 2 问题 2 3. 实例化公共模型 4 4. 实例化空模型 7    7.1 连接数据 ...

  7. Mybatis学习第一天——Mybatis的安装配置以及基本CURD操作

    1.Mybatis下载 Mybatis是开源的持久层框架,能够度jdbc进行简单的封装,但其并不是完全的ORM(Object Relational Mapping,对象关系映射),无法脱离数据库进行适 ...

  8. Node.js学习笔记(3) - 简单的curd

    这个算是不算完结的完结吧,前段时间也是看了好久的Node相关的东西,总想着去整理一下,可是当时也没有时间: 现在看来在整理的话,就有些混乱,自己也懒了,就没在整理,只是简单的记录一下 一.demo的简 ...

  9. mysql 操作sql语句 目录

    mysql 操作sql语句 操作数据库 mysql 操作sql语句 操作数据表 mysql 操作sql语句 操作数据表中的内容/记录

随机推荐

  1. ZOJ - 3948 Marjar Cola 【循环】

    题目链接 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3948 题意 用 x 个 瓶身 可以 换 一瓶饮料 用 y 个 瓶 ...

  2. Sqoop hive导出到mysql[转]

    通过Sqoop将Hive表数据导入到MySQL通常有两种情况. 第一种是将hive上某张表的全部数据导入到mysql对应的表中. 第二种是将hive上某张表中的部分数据导入到mysql对应的表中. 两 ...

  3. leetcode 792. Number of Matching Subsequences

    Given string S and a dictionary of words words, find the number of words[i] that is a subsequence of ...

  4. 激活win10企业长期服务版

    win10 2016 长期服务版的ISO文件中本身就带有KMS激活KEY,不用输入任何KEY,连接网络进入CMD,只要输入:slmgr /skms kms.digiboy.irslmgr /ato这两 ...

  5. cookie VS sessionstorge VS localstorge

    虽然cookie , localstorge , sessionstorge三者都有存储的功能,但是还是有区别, git上地址:https://github.com/lily1010/cookie-s ...

  6. HDU2222 Keywords Search —— AC自动机

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2222 Keywords Search Time Limit: 2000/1000 MS (Java/O ...

  7. pypi指定下载源

    pip install -i http://pypi.douban.com/simple/ scipy==0.19.0

  8. IOS从背景图中取色

    ​1. [代码][其他]代码     void *bitmapData; //内存空间的指针,该内存空间的大小等于图像使用RGB通道所占用的字节数. static CGContextRef Creat ...

  9. Keras 可视化 model

    参考:https://keras.io/visualization/ error解决参考:http://blog.csdn.net/wangjian1204/article/details/50346 ...

  10. 51nod最长递增路径:(还不错的图)

    一个无向图,可能有自环,有重边,每条边有一个边权.你可以从任何点出发,任何点结束,可以经过同一个点任意次.但是不能经过同一条边2次,并且你走过的路必须满足所有边的权值严格单调递增,求最长能经过多少条边 ...