(file_exists($f = dirname(__FILE__).'/db/mysql/install.sql'))
if(!$DB->Query("SELECT 'x' FROM b_catalog_group", true))
$errors = $DB->RunSQLBatch($_SERVER['DOCUMENT_ROOT']."/bitrix/modules/catalog/install/db/".strtolower($DB->type)."/install.sql");
namespace Partner\Demosite;
class DemoData
RegisterModuleDependences('main', 'OnPageStart', $this->MODULE_ID, '\Partner\Demosite\DemoData', 'AddDemoDataOptions');
\CAgent::AddAgent( "\\Your\\Module\\SuperClass::superAgent();", "your.module", "N", 10 * 24 * 3600, "", "Y");
\CAgent::RemoveModuleAgents("your.module");
#-----------------------------------------------#
# Начало блока конфигурации HTTP хоста
#-----------------------------------------------#
<VirtualHost *:%httpport%>
DocumentRoot "%hostdir%"
ServerName "%host%"
ServerAlias "%host%" %aliases%
ScriptAlias /cgi-bin/ "%hostdir%/cgi-bin/"
</VirtualHost>
<Directory "E:/OpenServer/OpenServer/domains/dev">
AllowOverride All
php_admin_value mbstring.func_overload 0
</Directory>
#-----------------------------------------------#
# Начало блока конфигурации HTTP хоста
#-----------------------------------------------#
<VirtualHost *:%httpport%>
DocumentRoot "%hostdir%"
ServerName "%host%"
ServerAlias "%host%" %aliases%
ScriptAlias /cgi-bin/ "%hostdir%/cgi-bin/"
<Directory "e:\openserver\openserver\domains\cli">
AllowOverride All
php_admin_value mbstring.func_overload 0
</Directory>
<Directory "E:/OpenServer/OpenServer/domains/dev">
AllowOverride All
php_admin_value mbstring.func_overload 0
</Directory>
</VirtualHost>
Если в инфоблоке несколько тысяч записей, какой запрос CIBlock::getList отработает быстрее, с применением arFilter или выборка всех записей?
public function ShowHead($bXhtmlStyle=true)
{
echo '<meta http-equiv="Content-Type" content="text/html; charset='.LANG_CHARSET.'"'.($bXhtmlStyle? ' /':'').'>'."\n";
$this->ShowMeta("robots", false, $bXhtmlStyle);
$this->ShowMeta("keywords", false, $bXhtmlStyle);
$this->ShowMeta("description", false, $bXhtmlStyle);
$this->ShowLink("canonical", null, $bXhtmlStyle);
$this->ShowCSS(true, $bXhtmlStyle);
$this->ShowHeadStrings();
$this->ShowHeadScripts();
}
Массив полей для группировки элемента. Если поля указаны, то выборка по ним группируется (при этом параметр arSelectFields будет проигнорирован), а в результат добавляется поле CNT - количество сгруппированных элементов. Если указать в качестве arGroupBy пустой массив, то метод вернет количество элементов CNT по фильтру. Группировать можно по полям элемента, а также по значениям его свойств. Для этого в качестве одного из полей группировки необходимо указать PROPERTY_, где PROPERTY_CODE - ID или символьный код свойства.
Необязательное. По умолчанию false - записи не группируются.
создала отдельный файл voting.php в шаблоне компонента
<?
require $_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php";
/**
* Тут можете проверить, что все переменные пришли
* Я для себя буду использовать переменные:
* - ELEMENT_ID
* - USER_ID
*
* Просто писать факт голосования.
* В таблицу project_element_vote ( ID, ELEMENT_ID, USER_ID )
*/
global $USER;
/* @var object Объект приложения */
$oApplication = \Bitrix\Main\Application::getInstance();
/* @var object Объект соединения с БД */
$oConnection = $oApplication->getConnection();
/* @var object Хелпер для безопасной записи в БД*/
$oHelper = $oConnection->getSqlHelper();
/* @var object Объект для работы с входящими переменными */
$oRequest = $oApplication->getContext()->getRequest();
if ( $oRequest->isAjaxRequest() && !empty( $oRequest->get('ELEMENT_ID') ) )
{
$iUser = $USER->GetId();
$iElement = $oHelper->forSql( $oRequest->get('ELEMENT_ID') );
$sql = "INSERT INTO project_element_vote('ELEMENT_ID','USER_ID') VALUES ('{$iElement}','{$iUser}')";
$res = $oConnection->query($sql);
if ( $res )
{
echo 'ok';
die();
}
}
echo 'bad';