Beispiel #1
0
 /**
  * Naplní data do DB a nastavení $this->rowID dle nově vloženého řádku
  * Dojde ke vložení všech dat $this->data
  *
  * @author Tomáš Kocifaj
  * @link http://www.ktstudio.cz
  *
  * @return mixed boolean | int - 1 při bezchybném vložení
  */
 private function insertRow()
 {
     global $wpdb;
     $updateValue = $this->getColumnsWithFormatsData();
     // Povolení filtru, který ze "NULL" strinogové hodnoty udělá v SQL dotazu běžný NULL pro nullable sloupce
     add_filter("query", array($this, "nullUpdateFilterCallback"));
     $sql = $wpdb->insert($this->getTable(), $updateValue->columns, $updateValue->formats);
     remove_filter("query", array($this, "nullUpdateFilterCallback"));
     // Zrušení předešlého filtru
     if (KT::issetAndNotEmpty($sql)) {
         $this->setId($wpdb->insert_id);
         return $this->getId();
     }
     $error = $wpdb->last_error;
     $this->addError("Došlo k chybě při vkládání dat do DB", $error);
     KT_Logger::error($error);
     return false;
 }