[HAL] Книги (Бета) [Удалено]

Статус
В этой теме нельзя размещать новые ответы.

xsacha

Только чтение
Сообщения
1,262
Реакции
1,392
Баллы
11,350
Пользователь xsacha разместил новый ресурс:

[HAL] Книги - Дополнение позволит Вам закачивать книги на форум.

Дополнение позволит Вам закачивать книги на форум и выводить их в виде списка.

Авторы плагина:
xsacha
Георгий Шевченко

Узнать больше об этом ресурсе...
 
Авторы плагина:
xsacha
Георгий Шевченко
Гремучая смесь. :-D

Добавлена книга успешно
Скачать уж её Вы извольте :laugh:.
Логичнее так: "Книга успешно добавлена".

Удалена книга успешно
Скачать Вы её не успели.
Может лучше: "Книга успешно удалена"?

Даже так? Мне казалось, что правильно будет всё же "СтраницЫ".
 
  • Мне нравится
Реакции: krik
Не идет никакой проверки на то, что именно я загружаю в папку. Можно залить шелл, прямо в php-формате и спокойно "скачать" его, то есть запустить.

А так идея ничего. Вот только сейчас ставить это не нужно.

В копилку критичных "багов". Путем изменения post-запросов можно удалить любой файл с директории. От удаления всех файлов с сервера нас спасает str_replace("..",".",$fileName), но не от разгрома в директории "книг".

PHP:
    public function HtmlSpecial($VAR) {
        return htmlspecialchars($VAR);
    }
 
    public function AddBook() {
        $book_img = $this->HtmlSpecial($_POST['book_img']);
        $book_title = $this->HtmlSpecial($_POST['book_title']);
        $book_tag = $this->HtmlSpecial($_POST['book_tag']);
        $book_ser = $this->HtmlSpecial($_POST['book_ser']);
        $book_aut = $this->HtmlSpecial($_POST['book_aut']);
        $book_iz = $this->HtmlSpecial($_POST['book_iz']);
        $book_god = $this->HtmlSpecial($_POST['book_god']);
        $book_str = $this->HtmlSpecial($_POST['book_str']);
        $book_down = $this->HtmlSpecial($_POST['book_down']);
        $date = $this->HtmlSpecial($_POST['date']);
        $user_id = $this->HtmlSpecial($_POST['user_id']);
Оптимизация ради оптимизации? Выполнение htmlspecialchars напрямую, без добавочной функции, будет более производительным.

PHP:
    public function getAllbook()
    {
        return $this->fetchAllKeyed('SELECT xf_book.*, xf_user.* FROM xf_book INNER JOIN xf_user ON xf_user.user_id = xf_book.user_id
        ORDER BY date DESC', 'id');
    }
Так не делают. Ладно получить * из книг, но зачем тянуть xf_user полностью? Лучше только нужные поля указать.

PHP:
// Copyright 2013 Robert Fuller
// All rights reserved.
А мужики-то и не знали, что xsacha Робертом звать.

Код:
                'iz' => array(
                    'type' => self::TYPE_STRING,
                    'required' => true,
                    'maxLength' => 100), 
                'god' => array(
                    'type' => self::TYPE_UINT,
                    'min' => 0,
                    'max' => 9999,
                    'default' => 0),
По 50 символов ограничение для русских названий книг, зато года аж до 9999 предусмотрены. А как же книги написанные до нашей эры?

RealKot, Smalesh, Skaiman, krik, удалите дополнение если уже поставили - причина повыше описана.
 
Exile, я и не ставил, я обычно скачиваю посмотреть реализацию :)
 
Тут надо все платные плагины на проверку брать, это караул...
 
Skaiman, ну я на всякий случай предупредил всех кто скачал. Потому что идея хорошая, но реализация...
Exile или xsacha,
поправьте, пожалуйста, "обзор", напишите предупреждение, что плагин пока "тестовый". Думаю, не все пользователи читают обсуждения...
 
Этот ресурс был удалён и более недоступен для скачивания.
 
Статус
В этой теме нельзя размещать новые ответы.
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу