使用PHP操作SQL 完成简单的CURD操作

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

  

时间: 2025-01-06 19:17:41

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

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

这个算是不算完结的完结吧,前段时间也是看了好久的Node相关的东西,总想着去整理一下,可是当时也没有时间: 现在看来在整理的话,就有些混乱,自己也懒了,就没在整理,只是简单的记录一下 一.demo的简单介绍 这次demo,只涉及到简单的curd操作,用到的数据库是mongo,所以要安装mongo数据库,数据库连接驱动是mongoose: 当然关于mongo的驱动有很多,比如mongous mongoskin等:(详见http://cnodejs.org/topic/4f4ca8e0940ce2e

Hibernate系列(五):利用Hibernate完成简单的CRUD操作

这里利用Hibernate操作数据库完成简单的CRUD操作. 首先,我们需要先写一个javabean: package cn.itcast.domain; import java.util.Date; public class User { private int id; private String name; private Date birthday; public int getId() { return id; } public void setId(int id) { this.id

【SSH三大框架】Hibernate基础第五篇:利用Hibernate完成简单的CRUD操作

这里利用Hibernate操作数据库完成简单的CRUD操作. 首先,我们需要先写一个javabean: package cn.itcast.domain; import java.util.Date; public class User { private int id; private String name; private Date birthday; public int getId() { return id; } public void setId(int id) { this.id

【SSH三大框架】Hibernate基础第五篇:利用Hibernate完毕简单的CRUD操作

这里利用Hibernate操作数据库完毕简单的CRUD操作. 首先.我们须要先写一个javabean: package cn.itcast.domain; import java.util.Date; public class User { private int id; private String name; private Date birthday; public int getId() { return id; } public void setId(int id) { this.id

一个简单的ORM制作(CURD操作类)

SQL执行类 CURD操作类 其他酱油类 此篇是为上篇文章填坑的,不知道上篇砸过来的砖头够不够,不够的话请大家继续砸. CURD操作类负责将用户提供的条件转换为SQL语句,并提供给IHelper执行,返回Model集合. CURD类需要一个接口抽象出公共方法.便于修改和扩展,提供泛型接口.为了简单起见暂时未提供JOIN的实现,可以以数据库视图替代 public interface IDbOper<T> : IDisposable where T : new() { object Insert(

SQL数据库简单操作

sql语言简介 (1)数据库是文件系统,使用标准sql对数据库进行操作 * 标准sql,在mysql里面使用语句,在oracle.db2都可以使用这个语句 (2)什么是sql * Structured Query Language, 结构化查询语言,对数据库进行操作 * sql非过程性语言,不需要依赖于其他的条件就可以运行 ** 比如 在java里面 *** if(a > 5) { System.out..... } (3)sql的分类 第一类:DDL (数据定义语言) * 创建数据库,创建数据

ThinkPHP3.2基础教程(19)--模型-CURD操作-数据创建

ThinkPHP提供了灵活和方便的数据操作方法,对数据库操作的四个基本操作(CURD):创建.更新.读取和删除的实现是最基本的,也是必须掌握的,在这基础之上才能熟悉更多实用的数据操作方法. CURD操作通常是可以和连贯操作配合完成的. 数据创建 在进行数据操作之前,我们往往需要手动创建需要的数据,例如对于提交的表单数据: // 获取表单的POST数据 $data['name'] = $_POST['name']; $data['email'] = $_POST['email']; // 更多的表

一行代码实现FMDB的CURD操作

上次实现FMDB的CURD基本操作后,用在项目里,每个实体类都要写SQL语句来实现创建表和CURD操作,总觉得太麻烦,然后就想着利用反射和kvc来实现一个数据库操作的基类继承一下,子类只需要继承,然后添加自己的属性就好,这里做一个总结. 第一个难点:获取子类的所有属性以及类型 OC中有提供获取所有property的方法,需要用到objc_property_t和class_copyPropertyList. objc_property_t *properties =class_copyProper

[转]C#操作SQL Server数据库

转自:C#操作SQL Server数据库 1.概述 ado.net提供了丰富的数据库操作,这些操作可以分为三个步骤: 第一,使用SqlConnection对象连接数据库: 第二,建立SqlCommand对象,负责SQL语句的执行和存储过程的调用: 第三,对SQL或存储过程执行后返回的“结果”进行操作. 对返回“结果”的操作可以分为两类: 一是用SqlDataReader直接一行一行的读取数据集: 二是DataSet联合SqlDataAdapter来操作数据库. 两者比较: SqlDataRead