Документация


Автоматически сгенерированная документация по коду системы с разбиением на разделы и примеры.


МенюДокументацияПодразделы
/ DB /

Examples.DB

./_documentation/_documentation.php
Примеры, как работать с базой данных.

Подразделы


AdminEditTable

Пример 1: как создать связку экшнов, позволяющих отредактировать таблицу:


Пример 2: Пример экшна adminbasicontology:

<?php
if($this->IsAdmin()) {
   
// security init
   
$this->secAdminedittable true;
   
$this->secAdminviewtable true;
   
// init adminviewtable
   
$tname='basicontology';
   
$header='ID:Владелец:Имя:Текст';
   
$fields='id:owner:name:title';
   
$maxsymbols 120;
   
$atype "compact";
   include(
'actions/adminviewtable.php');

   echo 
"<br />";
   
// init adminedittable
   
$fields='Владелец:owner:text:SiteAdmin::Имя:name:text: ::Текст:title:text: ';
   include(
'actions/adminedittable.php');
   
//security finalization
   
$this->secAdminedittable false;
   
$this->secAdminviewtable false;
}
?>


Пример 3 – еще один редактор таблиц (обратите внимание на параметр notparse):
<?php
if($this->IsAdmin()) {
   
// security init
   
$this->secAdminedittable true;
   
$this->secAdminviewtable true;
   
// init adminviewtable
   
$tname='wiki_proverb_model';
   
$header='id:ID модели:Юзер:Время:Последняя ли';
   
$fields='id:modelId:username:writetime:latest';
   
$maxsymbols 120;
   
$atype "compact";
   include(
'actions/adminviewtable.php');

   echo 
"<br />";
   
// init adminedittable
   
$notparse '1';
   
$fieldar = array ( array ('ID модели','modelId','int'''),
                      array (
'Юзер','username','tselect table="users" field="name" key="name"'''),
                      array (
'Время','writetime','datetime'''),
                      array (
'Последняя ли','latest','checkbox''0'),
              );

   include(
'actions/adminedittable.php');
   
//security finalization
   
$this->secAdminedittable false;
   
$this->secAdminviewtable false;
}
?>


LoadAll

Пример использования (экшн, выводящий список пользователей системы):
<?php
$res 
$this->_db->LoadAll("SELECT * FROM ".$this->_db->config["table_prefix"]."users");
     echo 
'<ul>';
     foreach(
$res as $user) {
       echo 
'<li>'.$user["name"].'</li>';
     }
     echo 
'</ul>';
?>


dbConstructSetArray

Пример функции ядра insertInto:
<?php
function insertInto($table,$data) {
   return 
$this->Query('INSERT INTO '.$this->config["table_prefix"].$table.' SET '.$this->dbConstructSetArray($data));
 }
?>


AdminFilterTable

Пример использования:
<?php
$this
->secAdminviewtable true;
   
//filter
   
$notparse '1';
   
$defaultfilter "";
   
$fieldar = array ( array ('Имя','title','savetext''LIKE'''), // означает сравнение с начала
                      
array ('Обработчик','processor','savetext''='''), // означает точное совпадение
                      
array ('Одобрено админом''approved''checkbox''=''1'),
              );
   include(
'actions/adminfiltertable.php');

   
// далее идет включение adminviewtable
?>


Комментарии [0]  (показать)
Комментарии скрыты. Чтобы увидеть комментарии нажмите сюда.