Таки смог, может кому надо. Сначала создал обычную форму и передаю с инпутов в фильтр. Главное в фильтре не забыть % - запрос по подстроке. (тут еще связку со свойствами не сделано). И еще в настройках Поиска убрать галочку Использовать морфологию, потом сделать полную переиндексацию.
| Код |
|---|
if( CModule::IncludeModule("iblock") ) {
//получаю фильтр с формы поиска
$nameForm = $_REQUEST["name"];
$addressForm = $_REQUEST["address"];
$otdelForm = $_REQUEST["otdel"];
$doljnostForm = $_REQUEST["doljnost"];
$fioForm = $_REQUEST["fio"];
$phoneForm = $_REQUEST["phone"];
$yvalue = 83;
$arSelect = Array("ID", "IBLOCK_ID", "NAME", "DATE_ACTIVE_FROM", "PROPERTY_*");
$arFilter = Array("IBLOCK_ID"=>IntVal($yvalue), "%NAME"=>$nameForm, "%PROPERTY_ADDRESS"=>$_REQUEST["address"], "%PROPERTY_SOTRUDNIKI.ORG_NAME"=>$_REQUEST["otdel"], "%PROPERTY_SOTRUDNIKI.DOLJNOST"=>$_REQUEST["doljnost"], "%PROPERTY_SOTRUDNIKI.NAME"=>$_REQUEST["fio"], "%PROPERTY_SOTRUDNIKI.PHONE"=>$_REQUEST["phone"], "ACTIVE_DATE"=>"Y", "ACTIVE"=>"Y");
$res = CIBlockElement::GetList(Array(), $arFilter, false, Array("nPageSize"=>50), $arSelect);
while($ob = $res->GetNextElement()){
$arFields = $ob->GetFields();
$arProps = $ob->GetProperties();?>
<h3><?echo $arFields["NAME"]?></h3>
<p><?=$arProps["ADDRESS"]["VALUE"]?></p>
<?
$xvalue = 85;
$arSelect1 = Array("ID", "IBLOCK_ID", "NAME", "DATE_ACTIVE_FROM", "PROPERTY_*");
$arFilter2 = Array("IBLOCK_ID"=>IntVal($xvalue), "ID"=>$arProps["SOTRUDNIKI"]["VALUE"], "ACTIVE_DATE"=>"Y", "ACTIVE"=>"Y");
$res1 = CIBlockElement::GetList(Array(), $arFilter2, false, Array("nPageSize"=>50), $arSelect1);
while($ob2 = $res1->GetNextElement()){
$arFields1 = $ob2->GetFields();
$arProps1 = $ob2->GetProperties();?>
<div class="sprav-list__item">
<div class="sprav-list__text">
<?=$arFields1["NAME"]?>
</div>
<div class="sprav-list__text">
<?=$arProps1["DOLJNOST"]["VALUE"]?>
</div>
<div class="sprav-list__text">
<?=$arProps1["CABINET"]["VALUE"]?>
</div>
<div class="sprav-list__text">
<?=$arProps1["PHONE"]["VALUE"]?>
</div>
</div>
<?
}
}
}
|
