Ассоциация ЭБНИТ    ИРБИС-корпорация    Вики-Ирбис    Online/CHM справка Ирбис    FTP-сервер
J-ИРБИС :  ИРБИС Irbis
 
Ссылки на номера журналов
Пользователь: mixalevo432 (IP-адрес скрыт)
Дата: 16, March, 2018 08:49

Доброго времени суток.

При возникла потребность вместо перехода к описанию номера журнала открывать его электронную версию, расположенную по пути, eказанному в v951^i.
Для этого в файле ji_numbers_links.php решил сделать следующее:
Создать переменную в которую положить v951^i, полученное в результате работы &uf('D...)
$link="&uf('D,!I=,"$code'/'$year'/'$number"!,v951^i')";
Тут выдаётся синтаксическая ошибка.

Далее я в вставляю эту переменную сюда
echo '<input value="'.$number.'" onClick="javascript:window.location=\''.'index.php?option=com_irbis&view=irbis&Itemid='$itemid.'&task=set_static_req&sys_code='.u::to_uri("$code/$year/$number").'&tmpl=component\'" class="number_button" type="button">';
вместо
index.php?option=com_irbis&view=irbis&Itemid='$itemid.'&task=set_static_req&sys_code='.u::to_uri("$code/$year/$number").'&tmpl=component
в результате
echo '<input value="'.$number.'" onClick="javascript:window.location=\''.$link.'\'" class="number_button" type="button">';

Подскажите, как сделать чтобы идея заработала? В какой строке файла нужно вводить переменную? Я её ввёл после декумуляции.

-------------------------------------------------------------------------------------------------------------
Кирсанов Никита
ФГУП "ВНИИА" ОПИНТИ

Re: Ссылки на номера журналов
Пользователь: Кирилл Соколинский (СЗТУ) (IP-адрес скрыт)
Дата: 18, March, 2018 13:46

Никита, использование языка форматирования вместо PHP невозможно!

Для получения значения 951^I по коду $code'/'$year'/'$number следует использовать примерно следующий PHP код


try{
	$res=ji_rec_common::find_records('IBIS', "<.>I=$code/$year/$number<.>");
	if (count($res)){
		$link=$res[0]->GetSubField(951,1,'I');		
	}else {
		throw new Exception("Не удалось найти запись номера, соответствующую коду $code/$year/$number !",111);
	}
}catch (Exception $e){	
	answer::text('Ошибка: '.$e->getMessage()." (".$e->getCode().")");	
}

В случае ошибки код возвращает текст ошибки.

Пока данная подсказка -- единственное, что я могу дать. Без серьёзного изучения PHP не обойтись.



Редактировано 1 раз. Последний раз 18.03.2018 22:24 пользователем Кирилл Соколинский (СЗТУ).



Извините, только зарегистрированные пользователи могут писать в этом форуме.
This forum powered by Phorum.