• Страница 1 из 1
  • 1
Скрипты и коды для юкоз - Форум аццкого кодера » Записи участника » ebokbak [3]
Результаты поиска
Дата: Вторник, 14.02.2012, 12:30 | Сообщение #1 | Тема: Оформление результатов поиска картинками-превью.
ebokbak
Рядовой
Группа: Проверенные
Сообщений: 3
Награды: 0
Репутация: 0
Статус: Offline


День добрый!

Вопрос так же по поиску на сайте. Никак не могу понять что и куда.
1. Шаблон не стандартный.
2. Раздел каталог статей.
3. На станице материала и комментариях к нему установлен $BRIEF$ вместо $MESSAGE$, т.е. в $BRIEF$ добавляется описание.
4. Подскажи пожалуйста что сделать что бы заработал поиск с картинкой.

Спасибо.


Сообщение отредактировал ebokbak - Четверг, 16.02.2012, 11:19
 
Дата: Суббота, 01.11.2014, 21:00 | Сообщение #2 | Тема: Как можно увеличить количество символов в дополнительно поле
ebokbak
Рядовой
Группа: Проверенные
Сообщений: 3
Награды: 0
Репутация: 0
Статус: Offline


Здравствуйте!

У меня вопрос по доп полям. Я использую скрипт, но знаний не хватает его улучшить.
Нужно что бы количество символов при добавлении доп поля была неограниченной для каждого, у меня никак не получается этого сделать. При добавлении в доп поле текста длинной свыше 2000-30000 символов, пропадают все другие поля вместе с этим.
И вторая проблема, при редактировании материала и его сохранении, и повторном сохранении в этом же окне, возникает ошибка: undefined которая прописывается во всех полях стирая старые значения которые были введены.

Вот код скрипта:

Этот код помещается на страницу редактирования и добавления в каталог файлов.

Код

<?if($PAGE_ID$='add')?>  
<script>  
var names = ['', 'H#1', 'Н#2', 'Н#3', 'Н#4', 'Н#5'], num_names = names.length, num = num_names, element = $('#ldM8');  
for(i=0;i<num;i++){var gp = gp + '<tr class="tewrt"><td id="rra'+i+'">'+names[i]+'</td><td id="farr'+i+'"></td></tr>';} element.after(gp);  
for(j=1;j<6;j++) {  
$('#farr'+j).append('<input id="apodp'+j+'" style="width:590px;background:white;" />');  
}  
$('.manFlSbm:last').click(function() {  
  for(i=1;i<6;i++) {  
$('#message:last').val($('#message').val() + '_x_PS'+i+' '+ $('#apodp' + i).val());  

}  
});  
</script>  
<?endif?>  
<?if($PAGE_ID$='edit')?>  
<script>  
var aratr = $('#message').html().replace('_x_PS2',' aXxXa'), afr = 2, madas = [], madas = aratr.split(' '), razam = madas.length;  
for(g=0;g<razam;g++){if(madas[g]=='aXxXa'){var afr = 1;}}  
if(afr=='1'){  
var names = ['', 'H#1', 'Н#2', 'Н#3', 'Н#4', 'Н#5'], num_names = names.length, num = num_names, element = $('#ldM8');  
for(i=0;i<num;i++){var gp = gp + '<tr class="tewrt"><td id="rra'+i+'">'+names[i]+'</td><td id="farr'+i+'"></td></tr>';} element.after(gp);  
var text = document.getElementById("message");  
var content = text.innerHTML;  
var mas = new Array();  
mas = content.split("_x_");  
var razm =mas.length;  
var artt=mas[0];  
document.getElementById('message').innerHTML = artt;  
for (var i=1; i<razm;i++){  
var afr=mas[i];  
var affrq=afr.replace('PS'+i+' ','');
var afrq = affrq.replace(/"/g,"");
if(afrq=='PS5') {var afrq='';}  
$("#farr"+i).append('<input type="text" id="apodp'+i+'" value="'+afrq+'" style="width: 590px;">');  
}  
$('.manFlSbm:last').click(function() {  
  for(i=1;i<6;i++) {  
$('#message:last').val($('#message').val() + '_x_PS'+i+' '+ $('#apodp' + i).val());  
$('#rra' + i).remove()  
$('#farr' + i).remove()  
}  
});  
}else {  
var names = ['', 'H#1', 'Н#2', 'Н#3', 'Н#4', 'Н#5'], num_names = names.length, num = num_names, element = $('#ldM8');  
for(i=0;i<num;i++){var gp = gp + '<tr class="tewrt"><td id="rra'+i+'">'+names[i]+'</td><td id="farr'+i+'"></td></tr>';} element.after(gp);  
for(j=1;j<6;j++) {  
$('#farr'+j).append('<input id="apodp'+j+'" style="width:590px;background:white;" />');  
}  
$('.manFlSbm:last').click(function() {  
for(i=1;i<6;i++) {  
$('#message:last').val($('#message').val() + '_x_PS'+i+' '+ $('#apodp' + i).val());  
$('#rra' + i).remove()  
$('#farr' + i).remove()  
}  
});  
}  
</script>  
<?endif?>


Этот код на страницу материала и комментариев в нему в каталог файлов

Код

<?if(strrpos($MESSAGE$,'PS1 _x_')>1)?>ПУСТО<?else?><?if(strrpos($MESSAGE$,'_x_PS1 ')>2)?>   
<?substr($MESSAGE$,strrpos($MESSAGE$,'_x_PS1 ') + 7,strrpos($MESSAGE$,'_x_PS2') - strrpos($MESSAGE$,'_x_PS1 ') - 7)?>   
<?endif?><?endif?>   

<?if(strrpos($MESSAGE$,'PS2 _x_')>1)?>ПУСТО<?else?><?if(strrpos($MESSAGE$,'_x_PS2 ')>2)?><?substr($MESSAGE$,strrpos($MESSAGE$,'_x_PS2') + 7,strrpos($MESSAGE$,'_x_PS3') - strrpos($MESSAGE$,'_x_PS2') - 7)?>   
<?endif?><?endif?>   

<?if(strrpos($MESSAGE$,'PS3 _x_')>1)?>ПУСТО<?else?><?if(strrpos($MESSAGE$,'_x_PS3 ')>2)?>   
<?substr($MESSAGE$,strrpos($MESSAGE$,'_x_PS3') + 7,strrpos($MESSAGE$,'_x_PS4') - strrpos($MESSAGE$,'_x_PS3') - 7)?>   
<?endif?><?endif?>  

<?if(strrpos($MESSAGE$,'PS4 _x_')>1)?>ПУСТО<?else?><?if(strrpos($MESSAGE$,'_x_PS4 ')>2)?>   
<?substr($MESSAGE$,strrpos($MESSAGE$,'_x_PS4') + 7,strrpos($MESSAGE$,'_x_PS5') - strrpos($MESSAGE$,'_x_PS4') - 7)?>   
<?endif?><?endif?>  

<?if(strrpos($MESSAGE$,'PS5 _x_')>1)?>ПУСТО<?else?><?if(strrpos($MESSAGE$,'_x_PS5 ')>2)?>   
<?substr($MESSAGE$,strrpos($MESSAGE$,'_x_PS5') + 7,strrpos($MESSAGE$,'_x_PS6') - strrpos($MESSAGE$,'_x_PS5') - 7)?>   
<?endif?><?endif?>  


Вот ссылка от куда был взят 1 код:
http://novi4ok.ru/load/19-1-0-287

Вот еще ссылка на 2 код, который мне больше понравился, но там нельзя сделать разумное ifelse так как используется одинаковый знак разделения доп полей |$| и количество символов так же ограничено.
http://uc-portaller.ru/load/8-1-0-5777

Подскажите как можно решить проблемы с первым кодом или может быть со вторым.


 
Дата: Воскресенье, 02.11.2014, 14:58 | Сообщение #3 | Тема: Как можно увеличить количество символов в дополнительно поле
ebokbak
Рядовой
Группа: Проверенные
Сообщений: 3
Награды: 0
Репутация: 0
Статус: Offline


Цитата likbezz, Вс, 02.11.2014, 04:57:04
Добрый.
У вас не хватает знаний, а у меня желания.
Присоединяюсь к написанному выше - скрипт в топку, аффтора на мыло.
Кроме то, озвучу некоторые полезные факты: операторы strrpos и strpos (да и многие другие) работают ТОЛЬКО с тысячей символов - от начала и от конца, соответственно.
Что и написано в офф документации, с которой вам следовало бы ознакомиться в любом случае.


Вас понял )) спасибо за информацию! Вот действительно не до конца понял информацию, про 1000 символов, теперь буду знать.


 
Скрипты и коды для юкоз - Форум аццкого кодера » Записи участника » ebokbak [3]
  • Страница 1 из 1
  • 1
Поиск:


Мобильная версия