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


PHP rex_sql::insert方法代码示例

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


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

示例1: asd_news_addClang

function asd_news_addClang($params)
{
    global $REX;
    $id = $params['id'];
    $name = $params['name'];
    $now = new DateTime();
    $error = false;
    $sql = new rex_sql();
    $sql->setQuery('SELECT * FROM `' . rex_asd_news_config::getTable() . '` WHERE `clang` = ' . $REX['START_CLANG_ID']);
    for ($i = 1; $i <= $sql->getRows(); $i++) {
        $save = new rex_sql();
        $save->setTable(rex_asd_news_config::getTable());
        $save->setValues($sql->getRow());
        $save->setValue('clang', $id);
        $save->setValue('createdAt', $now->format('Y-m-d H:i:s'));
        $save->setValue('updatedAt', $now->format('Y-m-d H:i:s'));
        $save->setValue('publishedAt', '0000-00-00 00:00:00');
        $save->setValue('createdBy', $REX['USER']->getValue('user_id'));
        $save->setValue('updatedBy', $REX['USER']->getValue('user_id'));
        $save->setValue('publishedBy', 0);
        $save->setValue('status', 0);
        unset($save->values['news_id']);
        if (!$save->insert()) {
            $error = $save->getError();
        }
    }
    if ($error) {
        echo rex_warning('ASD News: Neuigkeiten in der Sprache "' . $name . '" konnten nicht angelegt werden<br />' . $error);
    } else {
        echo rex_info('ASD News: Neuigkeiten in der Sprache "' . $name . '" wurden angelegt');
    }
}
开发者ID:Sysix,项目名称:asd_news,代码行数:32,代码来源:rex_asd_news_language.php

示例2: elseif

 function rex_copyRevisionContent($article_id, $clang, $from_revision_id, $to_revision_id, $from_re_sliceid = 0, $to_revision_delete = FALSE)
 {
     global $REX;
     if ($to_revision_delete) {
         $dc = new rex_sql();
         // $dc->debugsql = 1;
         $dc->setQuery('delete from ' . $REX['TABLE_PREFIX'] . 'article_slice where article_id=' . $article_id . ' and clang=' . $clang . ' and revision=' . $to_revision_id);
     }
     if ($from_revision_id == $to_revision_id) {
         return false;
     }
     $gc = new rex_sql();
     // $gc->debugsql = 1;
     $gc->setQuery("select * from " . $REX['TABLE_PREFIX'] . "article_slice where re_article_slice_id='{$from_re_sliceid}' and article_id='{$article_id}' and clang='{$clang}' and revision='{$from_revision_id}'");
     if ($gc->getRows() == 1) {
         // letzt slice_id des ziels holen ..
         $glid = new rex_sql();
         // $glid->debugsql = 1;
         $glid->setQuery("\n\t\t\t\t\tselect \n\t\t\t\t\t\tr1.id, r1.re_article_slice_id\n\t        from \n\t\t\t\t\t\t" . $REX['TABLE_PREFIX'] . "article_slice as r1\n\t\t\t\t\tleft join " . $REX['TABLE_PREFIX'] . "article_slice as r2 on r1.id = r2.re_article_slice_id\n\t        where \n\t\t\t\t\t\tr1.article_id = {$article_id} and r1.clang = {$clang} and \n\t\t\t\t\t\tr2.id is NULL and \n\t\t\t\t\t\tr1.revision='{$to_revision_id}';");
         if ($glid->getRows() == 1) {
             $to_last_slice_id = $glid->getValue("r1.id");
         } else {
             $to_last_slice_id = 0;
         }
         $ins = new rex_sql();
         // $ins->debugsql = 1;
         $ins->setTable($REX['TABLE_PREFIX'] . "article_slice");
         $cols = new rex_sql();
         $cols->setquery("SHOW COLUMNS FROM " . $REX['TABLE_PREFIX'] . "article_slice");
         for ($j = 0; $j < $cols->rows; $j++, $cols->next()) {
             $colname = $cols->getValue("Field");
             if ($colname == "re_article_slice_id") {
                 $value = $to_last_slice_id;
             } elseif ($colname == "revision") {
                 $value = $to_revision_id;
             } elseif ($colname == "createdate") {
                 $value = time();
             } elseif ($colname == "updatedate") {
                 $value = time();
             } elseif ($colname == "createuser") {
                 $value = $REX["USER"]->getValue("login");
             } elseif ($colname == "updateuser") {
                 $value = $REX["USER"]->getValue("login");
             } else {
                 $value = $gc->getValue($colname);
             }
             if ($colname != "id") {
                 $ins->setValue($colname, $ins->escape($value));
             }
         }
         $ins->insert();
         // id holen und als re setzen und weitermachen..
         rex_copyRevisionContent($article_id, $clang, $from_revision_id, $to_revision_id, $gc->getValue("id"));
         return true;
     }
     rex_generateArticle($article_id);
     return true;
 }
开发者ID:BackupTheBerlios,项目名称:redaxo-svn,代码行数:58,代码来源:function_rex_copyrevisioncontent.inc.php

示例3: execute

 function execute()
 {
     $subject_key = $this->action["elements"][2];
     $body_key = $this->action["elements"][3];
     $user_id_key = $this->action["elements"][4];
     foreach ($this->elements_sql as $key => $value) {
         if ($subject_key == $key) {
             $subject = $value;
         }
         if ($body_key == $key) {
             $body = $value;
         }
         if ($user_id_key == $key) {
             $from_user_id = $value;
         }
         // echo "<br /> $key => $value";
     }
     if ($subject == "" or $body == "" or $from_user_id == "") {
         return FALSE;
     }
     // User auslesen
     $gu = new rex_sql();
     // $gu->debugsql = 1;
     // $gu->setQuery('select * from rex_com_user where id<>"'.$from_user_id.'" order by id');
     $gu->setQuery('select * from rex_com_user order by id');
     foreach ($gu->getArray() as $user) {
         $user_body = $body;
         $user_subject = $subject;
         $to_user_id = $user["id"];
         // Empfaenger einbauen
         $in = new rex_sql();
         // $in->debugsql = 1;
         $in->setTable("rex_com_message");
         $in->setValue("user_id", $to_user_id);
         $in->setValue("from_user_id", $from_user_id);
         $in->setValue("to_user_id", $to_user_id);
         $in->setValue("subject", $user_subject);
         $in->setValue("body", $user_body);
         $in->setValue("create_datetime", time());
         $in->insert();
         /*
         $in = new rex_sql;
         // $in->debugsql = 1;
         $in->setTable("rex_com_message");
         $in->setValue("user_id",$from_user_id);
         $in->setValue("from_user_id",$from_user_id);
         $in->setValue("to_user_id",$to_user_id);
         $in->setValue("subject",$user_subject);
         $in->setValue("body",$user_body);
         $in->setValue("create_datetime",time());
         $in->insert();
         */
         rex_com_user::exeAction($to_user_id, "sendemail_newmessage", $user);
     }
 }
开发者ID:BackupTheBerlios,项目名称:redaxo-svn,代码行数:55,代码来源:class.xform.action_com_send_msg2all.inc.php

示例4: execute

 function execute()
 {
     // echo "DB EXECUTE";
     // return;
     $sql = new rex_sql();
     if ($this->params["debug"]) {
         $sql->debugsql = TRUE;
     }
     $main_table = "";
     if (isset($this->action["elements"][2]) && $this->action["elements"][2] != "") {
         $main_table = $this->action["elements"][2];
     } else {
         $main_table = $this->params["main_table"];
     }
     if ($main_table == "") {
         $this->params["form_show"] = TRUE;
         $this->params["hasWarnings"] = TRUE;
         $this->params["warning_messages"][] = $this->params["Error-Code-InsertQueryError"];
         return FALSE;
     }
     $sql->setTable($main_table);
     $where = "";
     if (isset($this->action["elements"][3]) && trim($this->action["elements"][3]) != "") {
         $where = trim($this->action["elements"][3]);
     }
     // SQL Objekt mit Werten füllen
     foreach ($this->elements_sql as $key => $value) {
         $sql->setValue($key, $value);
         if ($where != "") {
             $where = str_replace('###' . $key . '###', addslashes($value), $where);
         }
     }
     if ($where != "") {
         $sql->setWhere($where);
         $sql->update();
         $flag = "update";
     } else {
         $sql->insert();
         $flag = "insert";
         $id = $sql->getLastId();
         $this->elements_email["ID"] = $id;
         // $this->elements_sql["ID"] = $id;
         if ($id == 0) {
             $this->params["form_show"] = TRUE;
             $this->params["hasWarnings"] = TRUE;
             $this->params["warning_messages"][] = $this->params["Error-Code-InsertQueryError"];
         }
     }
 }
开发者ID:BackupTheBerlios,项目名称:redaxo-svn,代码行数:49,代码来源:class.xform.action_db.inc.php

示例5: array

 function a724_generatePathnamesFromTable($params)
 {
     $debug = false;
     $sql = new rex_sql();
     $results = $sql->getArray('SELECT article_id, url_table, url_table_parameters FROM rex_a724_frau_schultze WHERE url_table != "" AND url_table_parameters != ""');
     $URLPATH = array();
     if ($sql->getRows() >= 1) {
         a724_deletePathnamesFromTable();
         foreach ($results as $result) {
             if (is_array($result) && count($result) > 0) {
                 $path = rex_getUrl($result['article_id']) . '/';
                 $path = str_replace('.html', '', $path);
                 $table = $result['url_table'];
                 $params = unserialize($result['url_table_parameters']);
                 $col_name = $params[$table][$table . "_name"];
                 $col_id = $params[$table][$table . "_id"];
                 // Daten zum Aufbau der Urls holen
                 $sqlu = new rex_sql();
                 $sqlu->setDebug($debug);
                 $res = $sqlu->getArray('SELECT ' . $col_name . ' AS name, ' . $col_id . ' AS id FROM ' . $table);
                 if ($sqlu->getRows() >= 1) {
                     // Urls in die Datenbank schreiben
                     $sqli = new rex_sql();
                     $sqli->setDebug($debug);
                     foreach ($res as $re) {
                         $table_path = $path . strtolower(rex_parse_article_name($re['name'])) . '.html';
                         $table_id = $re['id'];
                         $URLPATH[$result['url_table']][$table_id] = $table_path;
                         $sqli->setTable('rex_a724_frau_schultze');
                         $sqli->setValue('article_id', $result['article_id']);
                         $sqli->setValue('status', '1');
                         $sqli->setValue('url_table', $result['url_table']);
                         $sqli->setValue('name', $table_path);
                         $sqli->insert();
                     }
                 }
             }
         }
     }
     rex_put_file_contents(A724_URL_TABLE_PATHLIST, "<?php\n\$URLPATH = " . var_export($URLPATH, true) . ";\n");
 }
开发者ID:BackupTheBerlios,项目名称:redaxo-svn,代码行数:41,代码来源:extension_common.inc.php

示例6: getInsertValue

 function getInsertValue($value)
 {
     $value = (array) $value;
     $section =& $this->getSection();
     // Alle vorhanden Werte löschen
     $sql = new rex_sql();
     $sql->setTable($this->foreignTable);
     $sql->setWhere($section->_getWhereString());
     $sql->delete();
     // und anschließend alle neu eintragen
     foreach ($value as $val) {
         // Parameter aus der Ursprungstabelle mit abspeichern damit später darüber verknüpft werden kann
         foreach ($section->getWhere() as $whereColName => $whereColValue) {
             $sql->setValue($whereColName, $whereColValue);
         }
         // Den zu speichernden Wert
         $sql->setValue($this->foreignField, $val);
         $sql->setTable($this->foreignTable);
         $sql->insert();
     }
     // null zurückgeben, damit zu diesem Feld nichts im rexForm gespeichert wird
     return null;
 }
开发者ID:BackupTheBerlios,项目名称:redaxo-addons,代码行数:23,代码来源:class.rex_externalMultiValueManager.inc.php

示例7: array

        $AART->setValue('name', $article_name);
        $AART->setValue('catname', $category_name);
        // TODO Neue noch nicht verwendete Datenbankspalten
        // $AART->setValue('attributes', $category_attributes);
        $AART->setValue('attributes', '');
        $AART->setValue('clang', $key);
        $AART->setValue('re_id', $category_id);
        $AART->setValue('prior', $Position_New_Article);
        $AART->setValue('path', $KATPATH);
        $AART->setValue('startpage', 0);
        $AART->setValue('status', 0);
        $AART->setValue('template_id', $template_id);
        // TODO hier Update + Createfields?
        $AART->addGlobalCreateFields();
        $AART->addGlobalUpdateFields();
        if ($AART->insert()) {
            // ----- PRIOR
            rex_newArtPrio($category_id, $key, 0, $Position_New_Article);
        } else {
            $amessage = $AART->getError();
        }
    }
    rex_generateArticle($id);
    // ----- EXTENSION POINT
    $amessage = rex_register_extension_point('ART_ADDED', $amessage, array('id' => $id, 'status' => 0, 'name' => $article_name, 're_id' => $category_id, 'prior' => $Position_New_Article, 'path' => $KATPATH, 'template_id' => $template_id));
} elseif (!empty($artedit_function) && $article_id != '' && $KATPERM) {
    // --------------------- ARTIKEL EDIT
    $Position_Article = (int) $Position_Article;
    if ($Position_Article == 0) {
        $Position_Article = 1;
    }
开发者ID:BackupTheBerlios,项目名称:redaxo-svn,代码行数:31,代码来源:structure.inc.php

示例8: createTable

 function createTable($mifix = "", $data_table, $params = array(), $debug = FALSE)
 {
     // Tabelle erstellen wenn noch nicht vorhanden
     $c = rex_sql::factory();
     $c->debugsql = $debug;
     $c->setQuery('CREATE TABLE IF NOT EXISTS `' . $data_table . '` ( `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY );');
     // Tabellenset in die Basics einbauen, wenn noch nicht vorhanden
     $c = new rex_sql();
     $c->debugsql = $debug;
     $c->setQuery('DELETE FROM rex_xform_table where table_name="' . $data_table . '"');
     $c->setTable('rex_xform_table');
     $params["table_name"] = $data_table;
     if (!isset($params["status"])) {
         $params["status"] = 1;
     }
     if (!isset($params["name"])) {
         $params["name"] = 'Tabelle "' . $data_table . '"';
     }
     if (!isset($params["prio"])) {
         $params["prio"] = 100;
     }
     if (!isset($params["search"])) {
         $params["search"] = 0;
     }
     if (!isset($params["hidden"])) {
         $params["hidden"] = 0;
     }
     if (!isset($params["export"])) {
         $params["export"] = 0;
     }
     foreach ($params as $k => $v) {
         $c->setValue($k, $v);
     }
     $c->insert();
     return TRUE;
 }
开发者ID:rotzek,项目名称:redaxo_xform,代码行数:36,代码来源:class.rex_xform_manager.inc.php

示例9: foreach

 }
 $postsavemode = 0;
 foreach ($postsavestatus as $status) {
     $postsavemode |= $status;
 }
 $faction->setTable($REX['TABLE_PREFIX'] . 'action');
 $faction->setValue('name', $name);
 $faction->setValue('preview', $previewaction);
 $faction->setValue('presave', $presaveaction);
 $faction->setValue('postsave', $postsaveaction);
 $faction->setValue('previewmode', $previewmode);
 $faction->setValue('presavemode', $presavemode);
 $faction->setValue('postsavemode', $postsavemode);
 if ($function == 'add') {
     $faction->addGlobalCreateFields();
     if ($faction->insert()) {
         $info = $I18N->msg('action_added');
     } else {
         $warning = $faction->getError();
     }
 } else {
     $faction->addGlobalUpdateFields();
     $faction->setWhere('id=' . $action_id);
     if ($faction->update()) {
         $info = $I18N->msg('action_updated');
     } else {
         $warning = $faction->getError();
     }
 }
 if (isset($goon) and $goon != '') {
     $save = 'nein';
开发者ID:BackupTheBerlios,项目名称:redaxo-svn,代码行数:31,代码来源:module.action.inc.php

示例10:

         if ($ga->getRows() > 0) {
             $err_msg .= $I18N->msg('setup_042');
         } else {
             if ($REX['PSWFUNC'] != '') {
                 $redaxo_user_pass = call_user_func($REX['PSWFUNC'], $redaxo_user_pass);
             }
             $user = new rex_sql();
             // $user->debugsql = true;
             $user->setTable($REX['TABLE_PREFIX'] . 'user');
             $user->setValue('name', 'Administrator');
             $user->setValue('login', $redaxo_user_login);
             $user->setValue('psw', $redaxo_user_pass);
             $user->setValue('rights', '#admin[]#dev[]#import[]#stats[]#moveSlice[]#');
             $user->addGlobalCreateFields('setup');
             $user->setValue('status', '1');
             if (!$user->insert()) {
                 $err_msg .= $I18N->msg("setup_043");
             }
         }
     }
 } else {
     $gu = new rex_sql();
     $gu->setQuery("select * from " . $REX['TABLE_PREFIX'] . "user LIMIT 1");
     if ($gu->getRows() == 0) {
         $err_msg .= $I18N->msg('setup_044');
     }
 }
 if ($err_msg == '') {
     $checkmodus = 5;
     $send = '';
 }
开发者ID:BackupTheBerlios,项目名称:redaxo,代码行数:31,代码来源:setup.inc.php

示例11: saveOverLangValues

 /**
  * @param rex_news_form $form
  * @param $id
  * @param $clang
  */
 public static function saveOverLangValues(rex_news_form $form, $id, $clang)
 {
     global $REX;
     $lang = new rex_sql();
     $lang->setQuery('SELECT `id` FROM `' . $REX['TABLE_PREFIX'] . 'clang` WHERE `id` != ' . $clang);
     for ($i = 1; $i <= $lang->getRows(); $i++) {
         $sql = new rex_sql();
         $sql->setTable($form->getTableName());
         $sql->setDebug(true);
         $sql->setWhere('`id` = ' . $id . ' AND `clang` = ' . $lang->getValue('id'));
         $sql->select('id');
         $sql->setTable($form->getTableName());
         $sql->setDebug(true);
         $sql->setWhere('`id` = ' . $id . ' AND `clang` = ' . $lang->getValue('id'));
         if (OOAddon::isAvailable('metainfo')) {
             $sql->setValues($form->getMetaValues());
         }
         if ($sql->getRows()) {
             $sql->setValues(array_intersect_key($form->getValues(), array_flip($form->getOverSavedFields())));
             $sql->setValue('clang', $lang->getValue('id'));
             $sql->setValue('id', $id);
             $sql->update();
         } else {
             $sql->setValues($form->getValues());
             $sql->setValue('clang', $lang->getValue('id'));
             $sql->setValue('id', $id);
             $sql->insert();
         }
         $lang->next();
     }
 }
开发者ID:olien,项目名称:global_settings,代码行数:36,代码来源:class.rex_global_settings_form.php

示例12: rex_medienpool_saveMedia

/**
 * Holt ein upgeloadetes File und legt es in den Medienpool
 * Dabei wird kontrolliert ob das File schon vorhanden ist und es
 * wird eventuell angepasst, weiterhin werden die Fileinformationen übergeben
 *
 * @param $FILE
 * @param $rex_file_category
 * @param $FILEINFOS
 * @param $userlogin
*/
function rex_medienpool_saveMedia($FILE, $rex_file_category, $FILEINFOS, $userlogin = null)
{
    global $REX, $I18N;
    $rex_file_category = (int) $rex_file_category;
    $gc = new rex_sql();
    $gc->setQuery('SELECT * FROM ' . $REX['TABLE_PREFIX'] . 'file_category WHERE id=' . $rex_file_category);
    if ($gc->getRows() != 1) {
        $rex_file_category = 0;
    }
    $FILENAME = $FILE['name'];
    $FILESIZE = $FILE['size'];
    $FILETYPE = $FILE['type'];
    $NFILENAME = rex_medienpool_filename($FILENAME);
    $message = '';
    // ----- neuer filename
    $dstFile = $REX['MEDIAFOLDER'] . '/' . $NFILENAME;
    // ----- dateiupload
    $upload = true;
    if (!@move_uploaded_file($FILE['tmp_name'], $dstFile) && !@copy($FILE['tmp_name'], $dstFile)) {
        $message .= $I18N->msg("pool_file_movefailed");
        $ok = 0;
        $upload = false;
    }
    if ($upload) {
        chmod($dstFile, $REX['FILEPERM']);
        // get widht height
        $size = @getimagesize($dstFile);
        $FILESQL = new rex_sql();
        $FILESQL->setTable($REX['TABLE_PREFIX'] . 'file');
        $FILESQL->setValue('filetype', $FILETYPE);
        $FILESQL->setValue('title', $FILEINFOS['title']);
        $FILESQL->setValue('filename', $NFILENAME);
        $FILESQL->setValue('originalname', $FILENAME);
        $FILESQL->setValue('filesize', $FILESIZE);
        $FILESQL->setValue('width', $size[0]);
        $FILESQL->setValue('height', $size[1]);
        $FILESQL->setValue('category_id', $rex_file_category);
        // TODO Create + Update zugleich?
        $FILESQL->addGlobalCreateFields($userlogin);
        $FILESQL->addGlobalUpdateFields($userlogin);
        $FILESQL->insert();
        $ok = 1;
        $message .= $I18N->msg("pool_file_added");
    }
    $RETURN['title'] = $FILEINFOS['title'];
    $RETURN['width'] = $size[0];
    $RETURN['height'] = $size[1];
    $RETURN['type'] = $FILETYPE;
    $RETURN['msg'] = $message;
    $RETURN['ok'] = $ok;
    $RETURN['filename'] = $NFILENAME;
    $RETURN['old_filename'] = $FILENAME;
    return $RETURN;
}
开发者ID:BackupTheBerlios,项目名称:redaxo,代码行数:64,代码来源:function_rex_generate.inc.php

示例13: VARCHAR

$a = new rex_sql();
$a->setTable("rex_62_params");
$a->setValue("title", "Gruppen");
$a->setValue("name", "art_com_groups");
$a->setValue("prior", "12");
$a->setValue("type", "3");
$a->setValue("attributes", "multiple=multiple");
$a->setValue("params", "select name as label,id from rex_com_group order by label");
$a->setValue("validate", NULL);
$a->addGlobalCreateFields();
$g = new rex_sql();
$g->setQuery('select * from rex_62_params where name="art_com_groups"');
if ($g->getRows() == 1) {
    $a->setWhere('name="art_com_groups"');
    $a->update();
} else {
    $a->insert();
}
$g = new rex_sql();
$g->setQuery('show columns from rex_article Like "art_com_groups"');
if ($g->getRows() == 0) {
    $a->setQuery("ALTER TABLE `rex_article` ADD `art_com_groups` VARCHAR( 255 ) NOT NULL");
}
// ************************************************************** CACHE LOESCHEN
$info = rex_generateAll();
// quasi kill cache ..
$REX['ADDON']['install']['auth'] = 1;
if ($error != "") {
    $REX['ADDON']['install']['auth'] = 0;
    $REX['ADDON']['installmsg']['auth'] = $error;
}
开发者ID:BackupTheBerlios,项目名称:redaxo-svn,代码行数:31,代码来源:install.inc.php

示例14: rex_medienpool_registerFile

function rex_medienpool_registerFile($physical_filename, $org_filename, $filename, $category_id, $title, $filesize, $filetype)
{
    global $REX, $REX_USER;
    $abs_file = $REX['MEDIAFOLDER'] . '/' . $physical_filename;
    if (!file_exists($abs_file)) {
        return false;
    }
    if (empty($filesize)) {
        $filesize = filesize($abs_file);
    }
    if (empty($filetype) && function_exists('mime_content_type')) {
        $filetype = mime_content_type($abs_file);
    }
    @chmod($abs_file, $REX['FILEPERM']);
    $filename = rex_medienpool_filename($filename, false);
    $org_filename = strtolower($org_filename);
    // Ggf Alte Datei umbennen
    rename($abs_file, $REX['MEDIAFOLDER'] . '/' . $filename);
    $abs_file = $REX['MEDIAFOLDER'] . '/' . $filename;
    // get widht height
    $size = @getimagesize($abs_file);
    $FILESQL = new rex_sql();
    // $FILESQL->debugsql=1;
    $FILESQL->setTable($REX['TABLE_PREFIX'] . "file");
    $FILESQL->setValue('filename', $filename);
    $FILESQL->setValue('originalname', $org_filename);
    $FILESQL->setValue('category_id', $category_id);
    $FILESQL->setValue('title', $title);
    $FILESQL->setValue('filesize', $filesize);
    $FILESQL->setValue('filetype', $filetype);
    $FILESQL->setValue('width', $size[0]);
    $FILESQL->setValue('height', $size[1]);
    // TODO Hier Update + Create zugleich?
    $FILESQL->addGlobalUpdateFields();
    $FILESQL->addGlobalCreateFields();
    $FILESQL->insert();
    return $FILESQL->getError() == '';
}
开发者ID:BackupTheBerlios,项目名称:redaxo-svn,代码行数:38,代码来源:medienpool.inc.php

示例15: setTableField

 public static function setTableField($table_name, array $table_field)
 {
     unset($table_field['id']);
     if ($table_name == '') {
         throw new Exception('table_name must be set');
     }
     if (count($table_field) == 0) {
         throw new Exception('field must be a filled array');
     }
     $fieldIdentifier = array('type_id' => $table_field['type_id'], 'type_name' => $table_field['type_name'], 'name' => $table_field['name']);
     $currentFields = rex_xform_manager_table::get($table_name)->getFields($fieldIdentifier);
     // validate specials
     if ($table_field['type_id'] == 'validate') {
         $table_field['list_hidden'] = 1;
         $table_field['search'] = 0;
     }
     self::createMissingFieldColumns($table_field);
     if (count($currentFields) > 1) {
         throw new Exception('more than one field found for table: ' . $table_name . ' with Fieldidentifier: ' . implode(', ', $fieldIdentifier) . '');
     } elseif (count($currentFields) == 0) {
         // Insert
         $field_insert = new rex_sql();
         $field_insert->debugsql = self::$debug;
         $field_insert->setTable(rex_xform_manager_field::table());
         $field_insert->setValue('table_name', $table_name);
         foreach ($table_field as $field_name => $field_value) {
             $field_insert->setValue($field_name, $field_value);
         }
         if (!isset($table['prio'])) {
             $field_insert->setValue('prio', rex_xform_manager_table::get($table_name)->getMaximumPrio() + 1);
         }
         $field_insert->insert();
     } else {
         // Update
         $currentField = $currentFields[0]->toArray();
         foreach ($table_field as $field_name => $field_value) {
             $currentField[$field_name] = $field_value;
         }
         $field_update = new rex_sql();
         $field_update->debugsql = self::$debug;
         $field_update->setTable(rex_xform_manager_field::table());
         $add_where = array();
         foreach ($fieldIdentifier as $field => $value) {
             $add_where[] = '`' . mysql_real_escape_string($field) . '`="' . mysql_real_escape_string($table_name) . '"';
         }
         $where = 'table_name="' . mysql_real_escape_string($table_name) . '"';
         if (count($add_where) > 0) {
             $where .= ' and (' . implode(' and ', $add_where) . ') ';
         }
         $field_update->setWhere($where);
         foreach ($table_field as $field_name => $field_value) {
             $field_update->setValue($field_name, $field_value);
         }
         $field_update->update();
     }
 }
开发者ID:alexbarnhill,项目名称:redaxo_xform,代码行数:56,代码来源:class.rex_xform_manager_table_api.inc.php


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