`
lanlansnss
  • 浏览: 44542 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

PDO 更改表某字段的值 得到某个表内的数据

    博客分类:
  • php
 
阅读更多
/**
	 * 更改狀態
	 * 修改某表某字段根據某條件
	 * @param string $table
	 * @param array $status array( 'name'=>'snuser', ''=>'',.....);
	 * @param array $where  array( "name = 'test' ", 'age=22',....);where條件 
	 * @return bool
	 */
	function changeStatus( $table, Array $status, Array $where ){
		if(  ! $table ){
			throw new Exception( __CLASS__ . 'has no param - table');
		}
		foreach ( $status as $k=>$v ){
			$setStr .= "`{$k}` = {$v},";
		}
		//加工刪除(,)
		$setStr = substr($setStr, 0, ( strlen($setStr) - 1 ) );
		$condition = ' WHERE 1=1 ';
		foreach ( $where  as $v ) {
			$condition .= ' AND ' . $v ;
		}
		$sql = "UPDATE {$table} SET  " . $setStr . $condition;
		$dbh    = BaseModel::dbh();
		$stm    = $dbh->prepare( $sql );
		$stm->execute();
		//sql检测
		if( $stm->errorCode() != 00000 ){
			throw  new PDOException( __CLASS__ . '  sql error:  ' . $sql );
		}
		return true;
	}


ex:
return $dispose->changeStatus( 'xxxx', array( 'column '=>1 ), array( 'id=1' ) );




得到某个表内的数据

/**
	 * getList
	 * 得到列表
	 * $limit = 'limit 1, 10 ';
	 * $assoc = true  返回單條索引
	 */
	function getTableList( $table, Array $column, Array $where, $is_count=false, $limit = '', $assoc = false) {
		if(  ! $table ){
			throw new Exception( __CLASS__ . 'has no param - table');
		}
		foreach ( $column as $v ){
			$selectStr .= "{$v},";
		}
		//加工刪除(,)
		$selectStr = substr($selectStr, 0, ( strlen($selectStr) - 1 ) );
		$sql       = sprintf( "SELECT %s FROM %s", $selectStr, $table );
		$condition = ' WHERE 1=1 ';
		foreach ( $where  as $v ) {
			$condition .= ' AND ' . $v ;
		}
		$sql   .= $condition . $limit;
		$dbh    = BaseModel::dbh();
		$stm    = $dbh->prepare( $sql );
		$stm->execute();
		if( $stm->errorCode() != 00000 ){
			throw  new PDOException( __CLASS__ . '  sql error:  ' . $sql );
		}
		$count  =  $stm->rowCount();
		if ( true == $is_count ) {
			return $count;
		}
		if( $count == 1 && $assoc == true ) {
			return $stm->fetch( PDO::FETCH_ASSOC );
		}
		return $stm->fetchAll( PDO::FETCH_ASSOC );
		
	}


ex:得到总数
$count =  $dispose->getTableList( 'xx', array('*'), array( 'id='.$id ), true );



ex: 得到集合
 $limit = sprintf("  LIMIT %d, %d", 1, 10 ); $dispose->getTableList( 'xx', array('*'), array( 'id='.$id ), false, $limit );

分享到:
评论

相关推荐

    YSF4_HAL_CANopen-002. PDO - 数据改变触发.rar

    YSF4_HAL_CANopen-002. PDO - 数据改变触发.rar

    EtherCAT增加PDO读写寄存器

    EtherCAT增加PDO读写寄存器

    pdo的连接数据的代码

    数据库连接PDO的连接方法,可以给大家分享一下,没事了可以看看。

    数据库访问抽象层PDO4You.zip

    PDO4You是一个类,它实现了单例设计模式用于连接数据库使用PDO扩展(PHP数据对象... ly / CUBRID类还可以立即执行多个查询给定一个字符串以JSON格式,指定了类型的查询、表、字段,字段值,条件等。 标签:PDO4You

    php pdo分页类

    php5推出的pdo统一数据接口,为了方便数据的分页写的pdo分页类。

    php pdo组件的用法

    单条查询不需要启用事务处理,并且不需要使用PDO的预处理方式,但注意要使用$pdo->quote()方法来自动将字符型变量值的字符中首尾加上单引号,以防止SQL注入,并且免去特殊符号转义的过程。 $db_type='mysql'; //...

    pdo pdo封装函数

    pdo链接数据库封装类库,用于数据库操作,执行数据库curd操作

    PHP使用PDO创建MySQL数据库、表及插入多条数据操作示例

    本文实例讲述了PHP使用PDO创建MySQL数据库、表及插入多条数据操作。分享给大家供大家参考,具体如下: 创建 MySQL 数据库: <?php $servername = localhost; $username = username; $password = password; try {...

    数据库抽象层-PDO和ADOdb.doc

    这就意味当从一个数据库系统向另一个数据库系统迁移时,几乎不用更改太多的程序代码,屏蔽不同数据库之间的差异 PDO:PHP Date Object 能使用PDO扩展本身执行任何数据库操作,必须使用一个database-specific PDO ...

    CoDeSys3.5 PDO Demo

    我自己写的CoDeSys3.5的PDO通信的Demo 下载就可以用 可是本人呕心沥血完成之作,现奉献大家。在此基础上只需稍作修改就可以直接使用

    操作pdo的函数库

    通过pdo对数据进行插入数据、更新数据、查看数据、删除数据的简单操作

    php的PDO常用类库.zip

    结合实例形式分析了PDO类库常见的连接,初始化及增删改查等操作技巧,获取表格的最后主键,检查数据是否已经存在(依赖条件),预处理删除(注:针对主键为 INT 类型,推荐使用),返回单个字段数据或单条记录。

    PHP PDO函数简介

    PHP PDO函数简介

    php的PDO常用类库

    结合实例形式分析了PDO类库常见的连接,初始化及增删改查等操作技巧,获取表格的最后主键,检查数据是否已经存在(依赖条件),预处理删除(注:针对主键为 INT 类型,推荐使用),返回单个字段数据或单条记录。

    PDO封装函数类

    PDO封装函数类,自己封装自用工具,赶紧下载吧PDO封装函数类PDO封装函数类PDO封装函数类PDO封装函数类

    EtherCAT动态PDO映射的实现方法

    作为EtherCAT协议栈的补充,实现PDO动态映射,是一个完整的EtherCAT从站必要的组成部分。

    PHP中的PDO函数库

    PDO->lastInsertId() — 获取写入的最后一条数据的主键值 PDO->prepare() — 生成一个“查询对象” PDO->query() — 处理一条SQL语句,并返回一个“PDOStatement” PDO->quote() — 为某个SQL中的字符串添加引号 PDO...

    PDO连接数据库类

    查询操作主要是PDO::query()、PDO::exec()、PDO::prepare()。PDO::query()主要是用于有记录结果返回的操作,特别是SELECT操作,PDO::exec()主要是针对没有结果集合返回的操作,比如INSERT、UPDATE、...

Global site tag (gtag.js) - Google Analytics