本文整理汇总了PHP中CSearch::SetContentItemParams方法的典型用法代码示例。如果您正苦于以下问题:PHP CSearch::SetContentItemParams方法的具体用法?PHP CSearch::SetContentItemParams怎么用?PHP CSearch::SetContentItemParams使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CSearch
的用法示例。
在下文中一共展示了CSearch::SetContentItemParams方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: ChangeIndex
function ChangeIndex($MODULE_ID, $arFields, $ITEM_ID=false, $PARAM1=false, $PARAM2=false, $SITE_ID=false)
{
$DB = CDatabase::GetModuleConnection('search');
if(array_key_exists("TITLE", $arFields))
$arFields["TITLE"] = Trim($arFields["TITLE"]);
if(array_key_exists("BODY", $arFields))
$arFields["BODY"] = Trim($arFields["BODY"]);
if(array_key_exists("PERMISSIONS", $arFields) && is_array($arFields["PERMISSIONS"]))
CSearch::ChangePermission($MODULE_ID, $arFields["PERMISSIONS"], $ITEM_ID, $PARAM1, $PARAM2, $SITE_ID);
if(array_key_exists("SITE_ID", $arFields) && is_array($arFields["SITE_ID"]))
CSearch::ChangeSite($MODULE_ID, $arFields["SITE_ID"], $ITEM_ID, $PARAM1, $PARAM2, $SITE_ID);
$strUpdate = $DB->PrepareUpdate("b_search_content", $arFields);
if(strlen($strUpdate) > 0)
{
$strSqlWhere = CSearch::__PrepareFilter(Array("MODULE_ID"=>$MODULE_ID, "ITEM_ID"=>$ITEM_ID, "PARAM1"=>$PARAM1, "PARAM2"=>$PARAM2, "SITE_ID"=>$SITE_ID), $bIncSites);
$strSql = "
SELECT sc.ID
FROM b_search_content sc
".($bIncSites? "INNER JOIN b_search_content_site scsite ON sc.ID=scsite.SEARCH_CONTENT_ID": "")."
".(strlen($strSqlWhere)>0? "WHERE ".$strSqlWhere: "")."
";
$rs = $DB->Query($strSql, false, "File: ".__FILE__."<br>Line: ".__LINE__);
while($ar = $rs->Fetch())
{
$strSql = "UPDATE b_search_content SET ".$strUpdate." WHERE ID=".$ar["ID"];
$DB->Query($strSql, false, "File: ".__FILE__."<br>Line: ".__LINE__);
if(array_key_exists("PARAMS", $arFields))
CSearch::SetContentItemParams($ar["ID"], $arFields["PARAMS"]);
}
}
}
示例2: Update
function Update($ID, $arFields)
{
$DB = CDatabase::GetModuleConnection('search');
$bUpdate = false;
if(array_key_exists("~DATE_CHANGE", $arFields))
{
$arFields["DATE_CHANGE"] = $arFields["~DATE_CHANGE"];
unset($arFields["~DATE_CHANGE"]);
}
elseif(array_key_exists("LAST_MODIFIED", $arFields))
{
$arFields["DATE_CHANGE"] = $arFields["LAST_MODIFIED"];
unset($arFields["LAST_MODIFIED"]);
}
elseif(array_key_exists("DATE_CHANGE", $arFields))
{
$arFields["DATE_CHANGE"] = $DB->FormatDate($arFields["DATE_CHANGE"], "DD.MM.YYYY HH:MI:SS", CLang::GetDateFormat());
}
if(BX_SEARCH_VERSION > 1)
unset($arFields["SEARCHABLE_CONTENT"]);
if (array_key_exists("SITE_ID", $arFields))
{
CSearch::UpdateSite($ID, $arFields["SITE_ID"]);
$bUpdate = true;
}
if (array_key_exists("PERMISSIONS", $arFields))
{
$arNewGroups = array();
foreach($arFields["PERMISSIONS"] as $group_id)
{
if(is_numeric($group_id))
$arNewGroups[$group_id] = "G".intval($group_id);
else
$arNewGroups[$group_id] = $group_id;
}
CSearch::SetContentItemGroups($ID, $arNewGroups);
$bUpdate = true;
}
if(array_key_exists("PARAMS", $arFields))
{
CSearch::SetContentItemParams($ID, $arFields["PARAMS"]);
$bUpdate = true;
}
$strUpdate = $DB->PrepareUpdate("b_search_content", $arFields);
if(strlen($strUpdate) > 0)
{
$arBinds=Array();
if(is_set($arFields, "BODY"))
$arBinds["BODY"] = $arFields["BODY"];
if(is_set($arFields, "SEARCHABLE_CONTENT"))
$arBinds["SEARCHABLE_CONTENT"] = $arFields["SEARCHABLE_CONTENT"];
if(is_set($arFields, "TAGS"))
$arBinds["TAGS"] = $arFields["TAGS"];
$DB->QueryBind("UPDATE b_search_content SET ".$strUpdate." WHERE ID=".intval($ID), $arBinds);
$bUpdate = true;
}
if ($bUpdate)
CSearchFullText::getInstance()->update($ID, $arFields);
}