当前位置: 首页>>代码示例>>PHP>>正文


PHP sql::getInsert方法代码示例

本文整理汇总了PHP中sql::getInsert方法的典型用法代码示例。如果您正苦于以下问题:PHP sql::getInsert方法的具体用法?PHP sql::getInsert怎么用?PHP sql::getInsert使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在sql的用法示例。


在下文中一共展示了sql::getInsert方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: on_node_change

 /**
  * @mcms_message ru.molinos.cms.hook.node
  */
 public static function on_node_change(Context $ctx, $node, $op)
 {
     try {
         list($sql, $params) = sql::getInsert('node__log', array('nid' => $node->id, 'uid' => $ctx->user->id, 'username' => $ctx->user->getNode()->getName(), 'operation' => $op, 'ip' => $_SERVER['REMOTE_ADDR'], 'timestamp' => mcms::now(), 'name' => $node->name));
         $ctx->db->exec($sql, $params);
     } catch (TableNotFoundException $e) {
     }
 }
开发者ID:umonkey,项目名称:molinos-cms,代码行数:11,代码来源:class.sysloglisthandler.php

示例2: saveNew

 /**
  * Создание новой ноды.
  */
 private function saveNew(array $data)
 {
     if (null !== $this->parent_id) {
         $position = $this->getDB()->getResult("SELECT `right` FROM `node` WHERE `id` = ?", array($this->parent_id));
         $max = intval($this->getDB()->getResult("SELECT MAX(`right`) FROM `node`"));
         // Превращаем простую ноду в родительску.
         if (null === $position) {
             $this->getDB()->exec("UPDATE `node` SET `left` = ?, `right` = ? WHERE `id` = ?", array($max, $max + 4, $this->parent_id));
             $data['left'] = $this->data['left'] = $max + 1;
             $data['right'] = $this->data['right'] = $max + 2;
         } else {
             $delta = $max - $position + 1;
             // mcms::debug($position, $max, $delta);
             // Вообще можно было бы обойтись сортированным обновлением, но не все серверы
             // это поддерживают, поэтому делаем в два захода: сначала выносим хвост за
             // пределы текущего пространства, затем — возвращаем на место + 2.
             $this->getDB()->exec("UPDATE `node` SET `left` = `left` + ? WHERE `left` >= ?", array($delta + 2, $position));
             $this->getDB()->exec("UPDATE `node` SET `right` = `right` + ? WHERE `right` >= ?", array($delta + 2, $position));
             $this->getDB()->exec("UPDATE `node` SET `left` = `left` - ? WHERE `left` >= ?", array($delta, $position + 2));
             $this->getDB()->exec("UPDATE `node` SET `right` = `right` - ? WHERE `right` >= ?", array($delta, $position + 2));
             $data['left'] = $this->data['left'] = $position;
             $data['right'] = $this->data['right'] = $position + 1;
         }
     }
     list($sql, $params) = sql::getInsert('node', $data);
     $sth = $this->getDB()->prepare($sql);
     $sth->execute($params);
     $this->id = $this->getDB()->lastInsertId();
 }
开发者ID:umonkey,项目名称:molinos-cms,代码行数:32,代码来源:class.node.php

示例3: testGetInsert

 public function testGetInsert()
 {
     list($sql, $params) = sql::getInsert('table', array('id' => 1, 'name' => 'test'));
     $this->assertEquals('INSERT INTO `table` (`id`, `name`) VALUES (?, ?)', $sql);
     $this->assertEquals(array(1, 'test'), $params);
 }
开发者ID:umonkey,项目名称:molinos-cms,代码行数:6,代码来源:class.sql.test.php


注:本文中的sql::getInsert方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。