php 用封装类的方法操作数据库和批量删除
封装类
- <?php
- class DBDA
- {
- public $host="localhost"; //服务器地址
- public $uid="root"; //用户名
- public $pwd="123"; //密码
- public $dbconnect; //连接对象
- //操作数据库的方法
- //$sql代表需要执行的SQL语句
- //$type代表SQL语句的类型,1代表查询,2代表增删改
- //$dbname代表要操作的数据库名称
- //如果是查询,返回二维数组
- //如果是增删改,返回true或false
- function Query($sql,$type=1,$dbname="mydb")
- {
- //造连接对象
- $this->dbconnect = new MySQLi($this->host,$this->uid,$this->pwd,$dbname);
- //判断是否出错
- if(!mysqli_connect_error())
- {
- //如果连接成功,执行SQL语句
- $result = $this->dbconnect->query($sql);
- //根据语句类型判断
- if($type==1)
- {
- //如果是查询语句,返回二维数组
- return $result->fetch_all();
- }
- else
- {
- //如果是其他语句,返回true或false
- return $result;
- }
- }
- else
- {
- return "连接失败!";
- }
- }
- }
批量删除
- <body>
- <h1>主页面</h1>
- <form action="piliangshanchu.php" method="post">
- <table width="100%" border="1" cellpadding="0" cellspacing="0">
- <tr>
- <td>代号</td>
- <td>姓名</td>
- <td>性别</td>
- <td>民族</td>
- <td>生日</td>
- <td>操作</td>
- </tr>
- <?php
- //造对象
- $db = new MySQLi("localhost","root","123","mydb");
- //判断是否出错
- !mysqli_connect_error() or die("连接失败!");
- //写SQL语句
- $sql = "select * from Info";
- //执行SQL语句
- $result = $db->query($sql);
- //读取数据
- $attr = $result->fetch_all();
- //遍历数组,显示
- foreach($attr as $v)
- {
- $sex = $v[2]?"男":"女";
- $sql = "select Name from Nation where Code = '{$v[3]}'";
- $r = $db->query($sql);
- $a = $r->fetch_row();
- echo "
- <tr>
- <td>
- <input class='ck' name='ck[]' type='checkbox' value='{$v[0]}' />
- {$v[0]}</td>
- <td>{$v[1]}</td>
- <td>{$sex}</td>
- <td>{$a[0]}</td>
- <td>{$v[4]}</td>
- <td><a href='delete.php?code={$v[0]}'>删除</a><a href='update.php?code={$v[0]}'>修改</a></td>
- </tr>
- ";
- }
- ?>
- <tr>
- <td><input type="checkbox" onclick="CheckAll(this)" />全选</td>
- <td><input type="submit" value="批量删除" /></td>
- </tr>
- </table>
- <a href="add.php">添加数据</a>
- </form>
- </body>
- <script type="text/javascript">
- function CheckAll(a)
- {
- var ck = document.getElementsByClassName("ck");
- //a.checked;
- //document.getElementById().removeAttribute
- for(var i=0;i<ck.length;i++)
- {
- if(a.checked)
- {
- ck[i].setAttribute("checked","checked");
- }
- else
- {
- ck[i].removeAttribute("checked");
- }
- }
- }
- </script>
- </html>
- <?php
- $ck = $_POST["ck"];
- include("DBDA.class.php");
- $db = new DBDA();
- foreach($ck as $v)
- {
- $sql = "delete from Info where Code='{$v}'";
- $db->Query($sql,0);
- }
- header("location:main.php");
php 用封装类的方法操作数据库和批量删除的更多相关文章
- python操作数据库之批量导入
python操作数据库之批量导入 Python语法简洁清晰,特色之一是强制用空白符(white space)作为语句缩进. Python具有丰富和强大的库.它常被昵称为胶水语言,能够把用其他语言制作的 ...
- Mybatis注解方法操作数据库
Java中使用Mybatis操作数据库主要有两种方法:注解和xml配置,注解相对比较简单和方便,两种方式的效果一致.本文以注解的方式说明用Mybatis访问数据库的方法 一.创建数据表(MySql) ...
- Android中SQLite数据库操作(2)——使用SQLiteDatabase提供的方法操作数据库
如果开发者对SQL语法不熟,甚至以前从未使用过任何数据库,Android的SQLiteDatabase提供了insert.update.delete或query语句来操作数据库. 一.insert方法 ...
- DDL_操作数据库_创建&查询和DDL_操作数据库_修改&删除&使用
DDL操作数据库.表 1.操作数据库:CRUD C(Create):创建 创建数据库: create database 数据库名称: 创建数据库判断不存在再创建 create database if ...
- Redis 先操作数据库和先删除缓存, 一致性分析
初始状态: 数据库和缓存中v=10 第一种,先删除缓存在操作数据库: 线程1准备更新数据库的值v=20,先删除缓存, 此时线程2进来, 缓存未命中,查询数据库v=10, 写入缓存v=10, cpu回到 ...
- DatabaseFactory.CreateDatabase 方法操作数据库
using Microsoft.Practices.EnterpriseLibrary.Data;using Microsoft.Practices.EnterpriseLibrary.Data.Sq ...
- GBase数据库存储过程——批量删除多个数据表的数据
偶尔需要清空一下数据库,重装成本太高. --清空历史存储过程 DROP Procedure `dap_model`.`delete_datas` ; --创建存储过程 DELIMITER // CRE ...
- 通过dataGridView控件中的checkBox控件对数据库进行批量删除
string id_s = ""; ; i < dataGridView1.Rows.Count; i++) //遍历所有行 { if (dataGridView1.Rows ...
- mySql事务_ _Java中怎样实现批量删除操作(Java对数据库进行事务处理)?
本文是记录Java中实现批量删除操作(Java对数据库进行事务处理),在开始之前先来看下面这样的一个页面图: 上面这张图片显示的是从数据库中查询出的出租信息,信息中进行了分页处理,然后每行的前面提 ...
随机推荐
- RONOJ 6今明的预算方案(有依赖的背包)
题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间.更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N元钱就行”.今 ...
- js中日历的代码
Html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...
- Hacker's guide to Neural Networks
Hacker's guide to Neural Networks Hi there, I'm a CS PhD student at Stanford. I've worked on Deep Le ...
- 登陆后淡入淡出更换rootViewController
- (void)restoreRootViewController:(UIViewController *)rootViewController { typedef void (^Animation) ...
- DedeCMS 5.7 后门漏洞
简要描述: DedeCMS V5.7 SP1正式版 UTF-8 GBK版本疑似被植入一句话后门 前几日下载并不存在此代码 详细说明: shopcar.class.php被植入一句话@eval(file ...
- webservice原理
webservice的工作原理 WebService的主要目标是跨平台的可互操作性.为了达到这一目标,WebService完全基于XML(可扩展标记语言).XSD(XMLSchema)等独立于平台 ...
- Gradle用户指南(3)-构建Java项目
1.构建基本的Java项目 为了使用 Java 插件,添加下面代码到构建文件: build.gradle apply plugin: 'java' 这个就是 定义一个 Java 项目的全部.它会将 J ...
- C语言中strstr函数
头文件:#include <string.h> strstr()函数用来检索子串在字符串中首次出现的位置,其原型为: char *strstr( char *str, char * ...
- linux 的useradd 命令的p选项
linux 的useradd 命令的p选项 错误用法: #useradd gaojian -p gaojian # ...
- Windows下Git Bash中文乱码
文章转自:http://ideabean.iteye.com/blog/2007367 打开Git Bash 进入目录:$ cd /etc 1. 编辑 gitconfig 文件:$ vi gitcon ...