Tanbka
.:
:. |
Дата: Понедельник, 12.11.2012, 11:14 | Сообщение # 1
|
|
Новинка создания новых дополнительных полей из формы добавления подписи Персональной страницы. Многие знают что в редактировании данных пользователя очень мало полей, А вам например нужно чтобы пользователя заполнил как можно больше информации о себе: Дополнительные поля ввода информации для ПС uCoz WMR-кошелёк, любимые фильмы, музыку, skype и т.д. Данный тип новшества увеличивает количество дополнительных полей на девять полей для ввода информации.
- Как работает это чудо? Ответ: Хак использует поле "Подпись" Но сама поле подпись тоже останется доступным))
Особенности: - Максимальная Длина введенных символов в эти доп.поля и в подпись в сумме 1000 Довольно таки хорошее число и её должно хватить - Вывод информации из доп.поля в Персон. странице в любом место - Информацию также можно выводить на форуме =D, что очень удобно в некоторых планах - Заполнять все поля не обязательно
Установка не так уж легка, но надеюсь всё подробно написать: Заходим в ПУ » Управление дизайном » Пользователи » "Форма редактирования персональной информации" И в самый конец добавляем этот код: Code <script> var adar = document.getElementById("siF9"); var contedant = adar.innerHTML; var aratr = contedant.replace('_x_Polus2',' aXxXa'); var madas = new Array(); madas = aratr.split(" "); var razam =madas.length; var afr=2; for (var g=0; g<razam;g++) { if(madas[g]=='aXxXa'){ var afr=1; } } // Author Fatal1ti if(afr=='1'){ $('#siM33').after('<tr class="tewrt"><td id="rra1">Название #1</td><td id="farr1"></td></tr><tr class="tewrt"><td id="rra2">Название #2</td><td id="farr2"></td></tr><tr class="tewrt"><td id="rra3">Название #3</td><td id="farr3"></td></tr><tr class="tewrt"><td id="rra4">Название #4</td><td id="farr4"></td></tr><tr class="tewrt"><td id="rra5">Название #5</td><td id="farr5"></td></tr><tr class="tewrt"><td id="rra6">Название #6</td><td id="farr6"></td></tr><tr class="tewrt"><td id="rra7">Название #7</td><td id="farr7"></td></tr><tr class="tewrt"><td id="rra8">Название #8</td><td id="farr8"></td></tr><tr class="tewrt"><td id="rra9">Название #9</td><td id="farr9"></td></tr>'); var text = document.getElementById("siF9"); var content = text.innerHTML; var mas = new Array(); mas = content.split("_x_"); var razm =mas.length; var artt=mas[0]; document.getElementById('siF9').innerHTML = artt; for (var i=1; i<razm;i++){ var afr=mas[i]; if(afr=='Polus9'){afr='';} var afrq=afr.replace('Polus'+i+' ',''); $("#farr"+i).append('<input type="text" id="apodp'+i+'" value="'+afrq+'" style="width: 100%;">'); } // Site Author Novi4ok.Ru $('.manFlSbm:last').click(function() { for(i=1;i<10;i++) { $('#siF9:last').val($('#siF9').val() + '_x_Polus'+i+' '+ $('#apodp' + i).val()); $('#rra' + i).remove() $('#farr' + i).remove()
} }); }else {
$('#siM33').after('<tr class="tewrt"><td id="rra1">Название #1</td><td id="farr1"></td></tr><tr class="tewrt"><td id="rra2">Название #2</td><td id="farr2"></td></tr><tr class="tewrt"><td id="rra3">Название #3</td><td id="farr3"></td></tr><tr class="tewrt"><td id="rra4">Название #4</td><td id="farr4"></td></tr><tr class="tewrt"><td id="rra5">Название #5</td><td id="farr5"></td></tr><tr class="tewrt"><td id="rra6">Название #6</td><td id="farr6"></td></tr><tr class="tewrt"><td id="rra7">Название #7</td><td id="farr7"></td></tr><tr class="tewrt"><td id="rra8">Название #8</td><td id="farr8"></td></tr><tr class="tewrt"><td id="rra9">Название #9</td><td id="farr9"></td></tr>'); for(j=1;j<10;j++) { $('#farr'+j).append('<input id="apodp'+j+'" style="width:100%;background:white;" />'); } $('.manFlSbm:last').click(function() { for(i=1;i<10;i++) { $('#siF9:last').val($('#siF9').val() + '_x_Polus'+i+' '+ $('#apodp' + i).val()); $('#rra' + i).remove() $('#farr' + i).remove() } }); } span></script> Если у вас подключены локальные пользователи, То заходим сюда: ПУ » Управление дизайном » Пользователи » Страница регистрации пользователей И перед /body вставляем этот код: Code <script> var adar = document.getElementById("siF9"); var contedant = adar.innerHTML; var aratr = contedant.replace('_x_Polus2',' aXxXa'); var madas = new Array(); madas = aratr.split(" "); var razam =madas.length; var afr=2; for (var g=0; g<razam;g++) { if(madas[g]=='aXxXa'){ var afr=1; } } // Author Fatal1ti if(afr=='1'){ $('#siM33').after('<tr class="tewrt"><td id="rra1">Название #1</td><td id="farr1"></td></tr><tr class="tewrt"><td id="rra2">Название #2</td><td id="farr2"></td></tr><tr class="tewrt"><td id="rra3">Название #3</td><td id="farr3"></td></tr><tr class="tewrt"><td id="rra4">Название #4</td><td id="farr4"></td></tr><tr class="tewrt"><td id="rra5">Название #5</td><td id="farr5"></td></tr><tr class="tewrt"><td id="rra6">Название #6</td><td id="farr6"></td></tr><tr class="tewrt"><td id="rra7">Название #7</td><td id="farr7"></td></tr><tr class="tewrt"><td id="rra8">Название #8</td><td id="farr8"></td></tr><tr class="tewrt"><td id="rra9">Название #9</td><td id="farr9"></td></tr>'); var text = document.getElementById("siF9"); var content = text.innerHTML; var mas = new Array(); mas = content.split("_x_"); var razm =mas.length; var artt=mas[0]; document.getElementById('siF9').innerHTML = artt; for (var i=1; i<razm;i++){ var afr=mas[i]; if(afr=='Polus6'){afr='';} var afrq=afr.replace('Polus'+i+' ',''); $("#farr"+i).append('<input type="text" id="apodp'+i+'" value="'+afrq+'" style="width: 100%;">'); } // Site Author Novi4ok.Ru $('.manFlSbm:last').click(function() { for(i=1;i<10;i++) { $('#siF9:last').val($('#siF9').val() + '_x_Polus'+i+' '+ $('#apodp' + i).val()); $('#rra' + i).remove() $('#farr' + i).remove()
} }); } else {
$('#siM33').after('<tr class="tewrt"><td id="rra1">Название #1</td><td id="farr1"></td></tr><tr class="tewrt"><td id="rra2">Название #2</td><td id="farr2"></td></tr><tr class="tewrt"><td id="rra3">Название #3</td><td id="farr3"></td></tr><tr class="tewrt"><td id="rra4">Название #4</td><td id="farr4"></td></tr><tr class="tewrt"><td id="rra5">Название #5</td><td id="farr5"></td></tr><tr class="tewrt"><td id="rra6">Название #6</td><td id="farr6"></td></tr><tr class="tewrt"><td id="rra7">Название #7</td><td id="farr7"></td></tr><tr class="tewrt"><td id="rra8">Название #8</td><td id="farr8"></td></tr><tr class="tewrt"><td id="rra9">Название #9</td><td id="farr9"></td></tr>'); for(j=1;j<10;j++) { $('#farr'+j).append('<input id="apodp'+j+'" type="text" style="width:100%;background:white;" />'); } $('.manFlSbm:last').click(function() { for(i=1;i<10;i++) { $('#siF9:last').val($('#siF9').val() + '_x_Polus'+i+' '+ $('#apodp' + i).val()); $('#rra' + i).remove() $('#farr' + i).remove() if(i==9){ document.getElementById('siF9').innerHTML = ''; }
}
// Site Author Novi4ok.Ru }); } </script> У кого uNet пользователи - тем этот код выше не вставлять
Теперь заходим в ПУ » Управление дизайном » Пользователи » Персональная страница пользователя И ищем такой код: $_SIGNATURE$ - Этот код выводит подпись пользователя Заменяем его на этот код: Code <?if($_SIGNATURE$)?> <?if(strrpos($_SIGNATURE$,'Polus1')>0)?> <?if(len(substr($_SIGNATURE$,0,strrpos($_SIGNATURE$,'_x_Polus1')))>0)?>
//Код ниже выводит подпись, если она есть и заполнены какие-то доп.поля <?substr($_SIGNATURE$,0,strrpos($_SIGNATURE$,'_x_Polus1'))?>
<?else?>
//Тут ничего нету т.к. пользователь не ввёл ничего в подпись, но некоторые доп.поля заполнил
<?endif?> <?else?>
//Код ниже выводит подпись, а пользователь все доп.поля оставил пустыми(незаполненными) $_SIGNATURE$
<?endif?> <?else?>
//Вообще ничего не заполнял, ни подписи, ни доп.полей
<?endif?> Комментарии (которые начинаются с двух косых //) удалите. Их я написал, чтобы вы поняли что за что отвечает
Теперь в Персональной странице где хотите выводите доп. поля через эти коды: Code <?if(strrpos($_SIGNATURE$,'_x_Polus1')>2)?> <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus1') + 9,strrpos($_SIGNATURE$,'_x_Polus2') - strrpos($_SIGNATURE$,'_x_Polus1') - 9)?> <?endif?>
<?if(strrpos($_SIGNATURE$,'_x_Polus2')>2)?> <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus2') + 9,strrpos($_SIGNATURE$,'_x_Polus3') - strrpos($_SIGNATURE$,'_x_Polus2') - 9)?> <?endif?>
<?if(strrpos($_SIGNATURE$,'_x_Polus3')>2)?> <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus3') + 9,strrpos($_SIGNATURE$,'_x_Polus4') - strrpos($_SIGNATURE$,'_x_Polus3') - 9)?> <?endif?>
<?if(strrpos($_SIGNATURE$,'_x_Polus4')>2)?> <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus4') + 9,strrpos($_SIGNATURE$,'_x_Polus5') - strrpos($_SIGNATURE$,'_x_Polus4') - 9)?> <?endif?>
<?if(strrpos($_SIGNATURE$,'_x_Polus5')>2)?> <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus5') + 9,strrpos($_SIGNATURE$,'_x_Polus6') - strrpos($_SIGNATURE$,'_x_Polus5') - 9)?> <?endif?>
<?if(strrpos($_SIGNATURE$,'_x_Polus6')>2)?> <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus6') + 9,strrpos($_SIGNATURE$,'_x_Polus7') - strrpos($_SIGNATURE$,'_x_Polus6') - 9)?> <?endif?>
<?if(strrpos($_SIGNATURE$,'_x_Polus7')>2)?> <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus7') + 9,strrpos($_SIGNATURE$,'_x_Polus8') - strrpos($_SIGNATURE$,'_x_Polus7') - 9)?> <?endif?>
<?if(strrpos($_SIGNATURE$,'_x_Polus8')>2)?> <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus8') + 9,strrpos($_SIGNATURE$,'_x_Polus9') - strrpos($_SIGNATURE$,'_x_Polus8') - 9)?> <?endif?>
<?if(strrpos($_SIGNATURE$,'_x_Polus9')>2)?> <?substr($_SIGNATURE$,strrpos($_SIGNATURE$,'_x_Polus9') + 9,len($_SIGNATURE$) - strrpos($_SIGNATURE$,'_x_Polus9'))?> <?endif?> Все они идут по порядку, из них вы можете делать ссылки или просто информацию Также есть вариант сделать выбор цвета фона пользователем и т.п.
Теперь, если вы используете форум заходим сюда: ПУ » Управление дизайном » Форум » Вид материалов Находим такой код: $SIGNATURE$ и заменяем его на это: Code <?if($SIGNATURE$)?> <?if(strrpos($SIGNATURE$,'Polus1')>0)?> <?if(len(substr($SIGNATURE$,0,strrpos($SIGNATURE$,'_x_Polus1')))>0)?>
//Код ниже выводит подпись, если она есть и заполнены какие-то доп.поля <?substr($SIGNATURE$,0,strrpos($SIGNATURE$,'_x_Polus1'))?>
<?else?>
//Тут ничего нету т.к. пользователь не ввёл ничего в подпись, но некоторые доп.поля заполнил
<?endif?> <?else?>
//Код ниже выводит подпись, а пользователь все доп.поля оставил пустыми(незаполненными) $SIGNATURE$
<?endif?> <?else?>
//Вообще ничего не заполнял, ни подписи, ни доп.полей
<?endif?> Комментарии (которые начинаются с двух косых //) удалите.
И если тут хотите вывести информацию из доп.поля то вот коды для вывода: Code <?if(strrpos($SIGNATURE$,'_x_Polus1')>2)?> <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus1') + 9,strrpos($SIGNATURE$,'_x_Polus2') - strrpos($SIGNATURE$,'_x_Polus1') - 9)?> <?endif?>
<?if(strrpos($SIGNATURE$,'_x_Polus2')>2)?> <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus2') + 9,strrpos($SIGNATURE$,'_x_Polus3') - strrpos($SIGNATURE$,'_x_Polus2') - 9)?> <?endif?>
<?if(strrpos($SIGNATURE$,'_x_Polus3')>2)?> <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus3') + 9,strrpos($SIGNATURE$,'_x_Polus4') - strrpos($SIGNATURE$,'_x_Polus3') - 9)?> <?endif?>
<?if(strrpos($SIGNATURE$,'_x_Polus4')>2)?> <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus4') + 9,strrpos($SIGNATURE$,'_x_Polus5') - strrpos($SIGNATURE$,'_x_Polus4') - 9)?> <?endif?>
<?if(strrpos($SIGNATURE$,'_x_Polus5')>2)?> <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus5') + 9,strrpos($SIGNATURE$,'_x_Polus6') - strrpos($SIGNATURE$,'_x_Polus5') - 9)?> <?endif?>
<?if(strrpos($SIGNATURE$,'_x_Polus6')>2)?> <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus6') + 9,strrpos($SIGNATURE$,'_x_Polus7') - strrpos($SIGNATURE$,'_x_Polus6') - 9)?> <?endif?>
<?if(strrpos($SIGNATURE$,'_x_Polus7')>2)?> <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus7') + 9,strrpos($SIGNATURE$,'_x_Polus8') - strrpos($SIGNATURE$,'_x_Polus7') - 9)?> <?endif?>
<?if(strrpos($SIGNATURE$,'_x_Polus8')>2)?> <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus8') + 9,strrpos($SIGNATURE$,'_x_Polus9') - strrpos($SIGNATURE$,'_x_Polus8') - 9)?> <?endif?>
<?if(strrpos($SIGNATURE$,'_x_Polus9')>2)?> <?substr($SIGNATURE$,strrpos($SIGNATURE$,'_x_Polus9') + 9,len($SIGNATURE$) - strrpos($SIGNATURE$,'_x_Polus9'))?> <?endif?> В общем-то и всё, надеюсь всё понятно - вопросы в комментарии. Доп. полей можно было сделать ещё больше - например 15, Но тогда будет немного хуже для поля подписи, Так как там уменьшается мак. количество символов..
7895328.jpg
(42.6 Kb)
Сообщение отредактировал Tanbka - Понедельник, 12.11.2012, 11:15 |
| |
|