Exemple #1
0
 function insert($table, $alias, &$data, $keyName = null)
 {
     $fmtsql = "INSERT INTO {$table} ( %s ) VALUES ( %s ) ";
     $alias = inflector::camelize($alias);
     $fields = array();
     foreach ($data[$alias] as $k => $v) {
         if (is_array($v) or is_object($v) or $v === NULL or $k[0] == '_') {
             continue;
         }
         $fields[] = "`{$k}`";
         $values[] = $this->Quote($v);
     }
     if (!isset($fields)) {
         die('class database method insertObject - no fields');
     }
     $this->_db->setQuery(sprintf($fmtsql, implode(",", $fields), implode(",", $values)));
     $insert = $this->_db->query();
     $message[] = '*********' . get_class($this) . ' | Insert';
     $message[] = $this->_db->getQuery();
     $message[] = $this->_db->getErrorMsg();
     appLogMessage($message, 'database');
     if (!$insert) {
         return false;
     }
     $id = $this->_db->insertid();
     if ($keyName && $id) {
         $data[$alias][$keyName] = $id;
     }
     $data['insertid'] = $id;
     // Clear session cache
     if (Configure::read('Cache.session')) {
         cmsFramework::clearSessionVar($this->name, 'findCount');
     }
     return true;
 }