Показать сообщение отдельно
Старый 30.03.2013, 08:59 Вверх   #1
Коварный тип
 
Аватар для Serberg
Serberg вне форума
Доп. информация
Хорошо Question Img v1.0 (Регистрация с отгадыванием картинки) [DLE: 9.4 и выше]

Question Img v1.0

Автор: MSW
Сайт поддержки: http://0-web.ru/
Версия DLE: 9.4 и выше



Хак система вопрос-ответ с картинкой добавляет в стандартный функционал системы Вопрос-Ответ возможность добавлять картинку. Что должно, хоть на какоето время, помочь справиться с регистрацией ботов и т.д.

В чём собственно отличие этого варианта реализации от аналогичных? Главная особенность в простоте установки и необходимости минимальных правок стандартных функций ДЛЕ. Вторая особенность это то что картинка вставляется через специальный тег, который понимает как локально-добавленные картинки так и картинки по ссылке с других ресурсов.

*** Установка ***

1. Файл: /engine/modules/functions.php
Найти:
Код:
if( ! defined( 'DATALIFEENGINE' ) ) {
    die( "Hacking attempt!" );
}
Добавить ниже:
Код:
#****** Question Img * by MSW ******#
function question_img($i) {
    $img = ( substr($i[1], 0, 4)=="http" ) ? $i[1] : "/uploads/question/{$i[1]}";
    return "<br><img src=\"{$img}\" />";
}
2. Файл: /engine/modules/register.php
Найти:
Код:
$tpl->set( '{question}', htmlspecialchars( stripslashes( $question['question'] ), ENT_QUOTES ) );
или:
Код:
$tpl->set( '{question}', htmlspecialchars( stripslashes( $question['question'] ), ENT_QUOTES, $config['charset'] ) );
Заменить на:
Код:
#****** Question Img * by MSW ******#
            $question['question'] = preg_replace_callback( "#\[img=(.+?)\]#is", "question_img", $question['question'] );
            $tpl->set( '{question}', stripslashes( $question['question'] ) );
#****** Question Img * by MSW ******#
3. Файл: /engine/modules/show.full.php
Найти:
Код:
$tpl->set( '{question}', "<span id=\"dle-question\">".htmlspecialchars( stripslashes( $question['question'] ), ENT_QUOTES )."</span>" );
или:
Код:
$tpl->set( '{question}', "<span id=\"dle-question\">".htmlspecialchars( stripslashes( $question['question'] ), ENT_QUOTES, $config['charset'] )."</span>" );
Заменить на:
Код:
#****** Question Img * by MSW ******#
            $question['question'] = preg_replace_callback( "#\[img=(.+?)\]#is", "question_img", $question['question'] );
            $tpl->set( '{question}', "<span id=\"dle-question\">".stripslashes( $question['question'] )."</span>" );
#****** Question Img * by MSW ******#

4. Создать каталог: /uploads/question
Поместить в него картинки, например: 1.jpg
Пример вопроса:
Что изображено на картинке? [img=1.jpg]
Инструкция в текстовом виде: question-img.txt.zip (1.1 Кб)
  Ответить с цитированием
 
Время генерации страницы 0.05978 секунды с 10 запросами