本文整理汇总了PHP中rex_sql::setNewId方法的典型用法代码示例。如果您正苦于以下问题:PHP rex_sql::setNewId方法的具体用法?PHP rex_sql::setNewId怎么用?PHP rex_sql::setNewId使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类rex_sql
的用法示例。
在下文中一共展示了rex_sql::setNewId方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: addslashes
}
// ------- Kategorienamen holen
$category = OOCategory::getCategoryById($category_id, $clang);
$category_name = '';
if ($category) {
$category_name = addslashes($category->getName());
}
$amessage = $I18N->msg('article_added');
unset($id);
$AART = new rex_sql();
foreach ($REX['CLANG'] as $key => $val) {
// ### erstelle neue prioliste wenn noetig
// $AART->debugsql = 1;
$AART->setTable($REX['TABLE_PREFIX'] . 'article');
if (!isset($id) or !$id) {
$id = $AART->setNewId('id');
} else {
$AART->setValue('id', $id);
}
$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);
示例2: rex_copyArticle
/**
* Kopieren eines Artikels von einer Kategorie in eine andere
*
* @param $id ArtikelId des zu kopierenden Artikels
* @param $to_cat_id KategorieId in die der Artikel kopiert werden soll
*/
function rex_copyArticle($id, $to_cat_id)
{
global $REX, $REX_USER;
$id = (int) $id;
$to_cat_id = (int) $to_cat_id;
$new_id = '';
// Artikel in jeder Sprache kopieren
foreach ($REX['CLANG'] as $clang => $clang_name) {
// validierung der id & from_cat_id
$from_sql = new rex_sql();
$qry = 'select * from ' . $REX['TABLE_PREFIX'] . 'article where clang="' . $clang . '" and id="' . $id . '"';
$from_sql->setQuery($qry);
if ($from_sql->getRows() == 1) {
// validierung der to_cat_id
$to_sql = new rex_sql();
$to_sql->setQuery('select * from ' . $REX['TABLE_PREFIX'] . 'article where clang="' . $clang . '" and startpage=1 and id="' . $to_cat_id . '"');
if ($to_sql->getRows() == 1 || $to_cat_id == 0) {
if ($to_sql->getRows() == 1) {
$path = $to_sql->getValue('path') . $to_sql->getValue('id') . '|';
$catname = $to_sql->getValue('name');
} else {
// In RootEbene
$path = '|';
$catname = $from_sql->getValue("name");
}
$art_sql = new rex_sql();
$art_sql->setTable($REX['TABLE_PREFIX'] . 'article');
if ($new_id == "") {
$new_id = $art_sql->setNewId('id');
}
$art_sql->setValue('id', $new_id);
// neuen auto_incrment erzwingen
$art_sql->setValue('re_id', $to_cat_id);
$art_sql->setValue('path', $path);
$art_sql->setValue('catname', $catname);
$art_sql->setValue('prior', 99999);
// Artikel als letzten Artikel in die neue Kat einfügen
$art_sql->setValue('status', 0);
// Kopierter Artikel offline setzen
$art_sql->addGlobalCreateFields();
$art_sql->setValue('startpage', 0);
// schon gesetzte Felder nicht wieder überschreiben
$dont_copy = array('id', 'pid', 're_id', 'catname', 'path', 'prior', 'status', 'createdate', 'createuser', 'startpage');
foreach (array_diff($from_sql->getFieldnames(), $dont_copy) as $fld_name) {
$art_sql->setValue($fld_name, $from_sql->getValue($fld_name));
}
$art_sql->setValue("clang", $clang);
$art_sql->insert();
// ArticleSlices kopieren
rex_copyContent($id, $new_id, $clang, $clang);
// Prios neu berechnen
rex_newArtPrio($to_cat_id, $clang, 1, 0);
} else {
return false;
}
} else {
return false;
}
}
// Generated des Artikels neu erzeugen
rex_generateArticle($id, false);
// Generated der Kategorien neu erzeugen, da sich derin befindliche Artikel geändert haben
rex_generateArticle($to_cat_id, false);
return $new_id;
}
示例3: rex_addArticle
/**
* Erstellt einen neuen Artikel
*
* @param array $data Array mit den Daten des Artikels
*
* @return array Ein Array welches den status sowie eine Fehlermeldung beinhaltet
*/
function rex_addArticle($data)
{
global $REX, $I18N;
$success = true;
$message = '';
if (!is_array($data)) {
trigger_error('Expecting $data to be an array!', E_USER_ERROR);
}
if (isset($data['prior'])) {
if ($data['prior'] <= 0) {
$data['prior'] = 1;
}
}
$message = $I18N->msg('article_added');
$AART = new rex_sql();
foreach ($REX['CLANG'] as $key => $val) {
// ------- Kategorienamen holen
$category = OOCategory::getCategoryById($data['category_id'], $key);
$category_name = '';
if ($category) {
$category_name = addslashes($category->getName());
}
$AART->setTable($REX['TABLE_PREFIX'] . 'article');
if (!isset($id) or !$id) {
$id = $AART->setNewId('id');
} else {
$AART->setValue('id', $id);
}
$AART->setValue('name', $data['name']);
$AART->setValue('catname', $category_name);
$AART->setValue('attributes', '');
$AART->setValue('clang', $key);
$AART->setValue('re_id', $data['category_id']);
$AART->setValue('prior', $data['prior']);
$AART->setValue('path', $data['path']);
$AART->setValue('startpage', 0);
$AART->setValue('status', 0);
$AART->setValue('template_id', $data['template_id']);
$AART->addGlobalCreateFields();
$AART->addGlobalUpdateFields();
if ($AART->insert()) {
// ----- PRIOR
rex_newArtPrio($data['category_id'], $key, 0, $data['prior']);
} else {
$success = false;
$message = $AART->getError();
}
// ----- EXTENSION POINT
$message = rex_register_extension_point('ART_ADDED', $message, array('id' => $id, 'clang' => $key, 'status' => 0, 'name' => $data['name'], 're_id' => $data['category_id'], 'prior' => $data['prior'], 'path' => $data['path'], 'template_id' => $data['template_id'], 'data' => $data));
}
return array($success, $message);
}