ingmar

ingmar
Рейтинг
111
Регистрация
11.01.2009
Должность
Геодезист
Интересы
Веб-мастер
base64

После него идет какой-нибудь набор символов типа "aHR0cDovL2NpdHl..."?

Сегодня попробую еще раз залить сайт и БД, может поможет.

Бд через что льете? Через стандартный dle-шный или внешний скрипт?

LEOnidUKG:
Это не штатная ситуация и в ней может быть всё, что угодно. Поэтому её рассматривать не вижу смысла.

Если не была бы штатной, то тут бы не появлялось куча топиков с просьбами помочь "вычистить левые ссылки". Если человек технически грамотен и имеет продолжительный опыт работы с скриптом, то да, скорей всего он знает, что делает. Тут я даже не стараюсь спорить, я не программист, но общую механику вещей понимаю. Практика показывает, что сайты на dle не стоит надолго оставлять без внимания, не говоря уже о облегчении труда злоумышленника.

p.s Целсофт в версии 9.2 убрал возможность использования php в login.tpl и причина далеко не в удобстве верстки этого шаблона.

---------- Добавлено 31.01.2012 в 11:54 ----------

BadBoy:
ну вообще по идее он должен выводить инфу только на главной, стучи в аську постараюсь помочь

Страницы пагинации тоже якобы "главные" в глазах dle.

LEOnidUKG:
Дальше читать нет смысла.

Ну да, как ведь это возможно, куки не воруют, пароли не подбирают, ссылки на фишинговые страницы не кидаются, а самое главное все админы обновляются до актуальных версий, особенно те, которые пишут в топике "с dle не работал раньше, сайт купил". А гаранты гарантируют адекватность своих высказываний. Дальше беседовать нет смысла.;)

Версия dle? Если ниже 9.2, то скиньте еще и файл login.tpl (через "Выделить все", а то "умники" частенько прячут код через множество пробелов).

LEOnidUKG:
Ну давайте-давайте расскажите нам КАК удалённо можно запихать в шаблон PHP скрипт в DLE.
Только без теорий! А прямо по пунктам как это сделать.

Давайте без всяких там "давайте". Я ничем вроде Вам конкретно не обязан. Есть ситуация - злоумышленник получает доступ к админ-панели, как не важно, в привате того же античата думаю найдутся способы это сделать, а в старых версиях скрипта и пабликом можно воспользоваться. Далее нам нужно залить шелл, через стандартный загрузчик файлов не получится, ибо в этих папках запрещено выполнять php файлы, а тут вдруг оказывается, что ленивый админ разрешил вставить сценарий шелла прямо в шаблон сайта, как-то так.

p.s Ни на что не претендую, возможно я глупый параноик и Вы правы.

LEOnidUKG:

И наслаждаетесь полным PHP в шаблонах. Везде на форумах рекомендуют.

И получаем +1 к "Силе духа" школо-хакера.

спасибо. Но что-то геморный способ какой-то...

"Геммор", как вы выразились всего на минуту работы. В итоге получаем:

- вывод информации на указанных страницах навигации

- скрытие информации на указанных страницах навигации

- работа совместно с тегами aviable= и category=

По мне так более изящней, чем разрешать выполнение php сценариев в tpl-ках.

Есть хак, называется "Постраничный фильтр для тегов aviable и category в DLE".


Открыть файл /engine/classes/templates.class.php

Найти строку:
$this->template = file_get_contents( $this->dir . DIRECTORY_SEPARATOR . $tpl_name );
После нее вставить:
if (strpos ( $this->template, "[page=" ) !== false) $this->template = preg_replace ( "#\\[page=(.+?)\\](.*?)\\[/page\\]#ies", "\$this->check_page('\\1', '\\2')", $this->template );

if (strpos ( $this->template, "[not-page=" ) !== false) $this->template = preg_replace ( "#\\[not-page=(.+?)\\](.*?)\\[/not-page\\]#ies", "\$this->check_page('\\1', '\\2', false)", $this->template );

Найти строку:
$template = file_get_contents( $this->dir . DIRECTORY_SEPARATOR . $tpl_name );
После нее вставить:
if (strpos ( $template, "[page=" ) !== false) $this->template = preg_replace ( "#\\[page=(.+?)\\](.*?)\\[/page\\]#ies", "\$this->check_page('\\1', '\\2')", $this->template );

if (strpos ( $template, "[not-page=" ) !== false) $this->template = preg_replace ( "#\\[not-page=(.+?)\\](.*?)\\[/not-page\\]#ies", "\$this->check_page('\\1', '\\2', false)", $this->template );

Найти строку:
function check_module($aviable, $block, $action = true) {
ПЕРЕД ней вставить:
function check_page($pages, $block, $action = true) {
$cstart = intval($_GET['cstart']);
if($cstart<1) $cstart=1;
if(strpos($pages, "-") !== false){
$pages_arr = explode( '-', $pages );
$pages = array();
for($i=$pages_arr[0];$i<=$pages_arr[1];$i++) $pages[] = $i;
}else $pages = explode( '|', $pages );
$block = str_replace( '\"', '"', $block );
if( $action ) {
if( ! (in_array( $cstart, $pages )) ) return "";
else return $block;
} else {
if( (in_array( $cstart, $pages )) ) return "";
else return $block;
}
}

Далее просто указываем [page=1|2|5]ваш текст[/page] страницы в которых надо вывести.

Здравствуйте, купил сайт на DLE 9.4, продавец попытался залить его на мой сервер, но что-то у него не получается.. Вот переписка:

"статьи и новости есть в админке редактируются все норм
а на сайте их не показывает
добавляешь новые, на сайт выводятся, а в админке не показываются"

В чем может быть проблема?

При заходе в разделы сайта, выдает такую ошибку:
Внимание, обнаружена ошибка
По данному адресу публикаций на сайте не найдено, либо у вас нет доступа для просмотра информации по данному адресу.
Быть может проблема в CHMOD?

p.s. С DLE дело имею первый раз..

В версии 9.4 есть полезная функция в админке, называется "Перестроение публикаций". Если не поможет заходим в редактирование категорий - отсортировать категории, далее открываем в phpmyadmin Бд сайта, находим таблицу dle_post - Обзор. И выборочно сверяем прописаны ли вообще категории в новостях.



---------- Добавлено 31.01.2012 в 07:15 ----------

Ligue-1:
Понял, не дурак :)

---------- Добавлено 31.01.2012 в 03:31 ----------

Тогда все-таки задам свой вопрос, как сделать так что бы на главной странице выводились новости по выбору, а сбоку шла полная лента новостей? Во как, аж два вопроса)

Выводить новости через {custom}, как им пользоваться доходчиво объяснено в стандартной помощи по шаблонам.

Всего: 530