Иван Бондаренко
С нами с 30 января 2013; Место в рейтинге пользователей: #91Расширение формы Tickets
Здравствуйте!
Столкнулся с проблемой, необходимо в существующую форму создания тикета добавить загрузку изображения.
В чем заключается трудность. Для того, чтобы передавать файлы через форму, атрибут формы enctype должен быть равен multipart/form-data. После этого, файл помещается в глобальный массив $_FILES, и информация о файле доступна в $_FILES['имя-поля-с-типом-file'] -> name,size,tmp_name.
Сейчас у формы создания тикетов не задан атрибут enctype и по умолчанию он равен application/x-www-form-urlencoded. Если изменить значение enctype у формы создания тикета на multipart/form-data, тогда данные теряются и ничего не создается.
Пытался вытащить значение в функции saveTicket из массива $_FILES — но ничего не вышло.
Столкнулся с проблемой, необходимо в существующую форму создания тикета добавить загрузку изображения.
В чем заключается трудность. Для того, чтобы передавать файлы через форму, атрибут формы enctype должен быть равен multipart/form-data. После этого, файл помещается в глобальный массив $_FILES, и информация о файле доступна в $_FILES['имя-поля-с-типом-file'] -> name,size,tmp_name.
Сейчас у формы создания тикетов не задан атрибут enctype и по умолчанию он равен application/x-www-form-urlencoded. Если изменить значение enctype у формы создания тикета на multipart/form-data, тогда данные теряются и ничего не создается.
Пытался вытащить значение в функции saveTicket из массива $_FILES — но ничего не вышло.
TicketForm ограничить доступные юзерам секции!
Доброй ночи! Василий подскажите пожалуйста — в данный момент TicketForm выводит все секции которые созданы на сайте, таким образом пользователь может написать статью в любую секцию.
Как можно ограничить в TicketForm выводимые секции чтобы пользователи могли писать статьи только в разрешенные для них секции? Nо есть таким образом как и у вас на сайте — для обычных пользователей доступны только две секции «Вопрос» и «Объявления о работе»
Как можно ограничить в TicketForm выводимые секции чтобы пользователи могли писать статьи только в разрешенные для них секции? Nо есть таким образом как и у вас на сайте — для обычных пользователей доступны только две секции «Вопрос» и «Объявления о работе»
Как загнать в кеш все ресурсы сайта?
Подскажите, пожалуйста, как проще всего загнать в кеш все страницы сайта на MODX?
Отзывы о сайте через Tickets
Есть сайт itq.by/, хочу на главной странице — вывести последние три комментария, сама страница с отзывами itq.by/kommentarii.html,
будьте так добры, подскажите как это можно сделать.
+ сайт сделали на bootstrap, интересно было бы услышать критику или советы что можно улучшить еще.
Заранее благодарю.
будьте так добры, подскажите как это можно сделать.
+ сайт сделали на bootstrap, интересно было бы услышать критику или советы что можно улучшить еще.
Заранее благодарю.
Добавление нескольких товаров в корзину MiniShop
Добрый день, не подскажите, как возможно добавить в корзину сразу массив товаров за один клик по кнопке «добавить».
Как правильно реализовать систему уведомлений?
Добрый день!
Мне необходимо реализовать систему уведомлений пользователей в личном кабинете. Например, за неделю до окончания средств на счету, в личном кабинете пользователя (на сайте) должно появляться уведомление об этом. Если он закрыл уведомление, то больше его не показывать. Ну и любые другие события, требующие внимания пользователя дублировать уведомлениями.
Подскажите, есть ли какая-то общепринятая схема реализации таких уведомлений?
Защита 22го порта сервера - ssh
Многие недооценивают опасность от автоматического подбора паролей на 22м порту — это, который ssh.
Я тоже раньше не заморачивался по этому поводу, пока, несколько лет назад, у меня не увели сервер с 12символьным цифробуквенным паролем в разных регистрах.
Ну то есть, вчера я мог на него зайти, а сегодня — уже не пускает! И чем он там занимается, под руководством новых хозяев, в каком ботнете учавствует — мне не ведомо. Хорошо, что к этому серверу у меня был физический доступ, и я смог сбросить пароль через LiveCD.
Заодно посмотрел в /var/log/auth.log и ужаснулся: десятки тысяч попыток логина с разных китайских айпишников, под разными именами, типа root, user, ftp, www-data и пр.
Собственно, с тех пор я и выработал свои правила защиты 22го порта.
Я тоже раньше не заморачивался по этому поводу, пока, несколько лет назад, у меня не увели сервер с 12символьным цифробуквенным паролем в разных регистрах.
Ну то есть, вчера я мог на него зайти, а сегодня — уже не пускает! И чем он там занимается, под руководством новых хозяев, в каком ботнете учавствует — мне не ведомо. Хорошо, что к этому серверу у меня был физический доступ, и я смог сбросить пароль через LiveCD.
Заодно посмотрел в /var/log/auth.log и ужаснулся: десятки тысяч попыток логина с разных китайских айпишников, под разными именами, типа root, user, ftp, www-data и пр.
Собственно, с тех пор я и выработал свои правила защиты 22го порта.
Nginx: защита по ip + ограничение частых запросов
Поразбирался с правилами nginx и написал для себя универсальную «закрывашку» системных директорий для всех ip кроме нужных.
Сюда попадут любые запросы в директории manager, core и connectors. Все адреса, кроме разрешенных получат отлуп, а разрешенные обработаются. Так как nginx начинает применять правила после первого точного совпадения — отдельно указываем как обрабатывать *.php файлы.
Сюда попадут любые запросы в директории manager, core и connectors. Все адреса, кроме разрешенных получат отлуп, а разрешенные обработаются. Так как nginx начинает применять правила после первого точного совпадения — отдельно указываем как обрабатывать *.php файлы.
location ~* ^\/(manager|core|connectors)\/(?:.*)$ {
allow айпиадмина-1;
allow айпиадмина-2;
deny all;
location ~* \.php$ {
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass backend-имясайта;
}
}
MODX_API_MODE и процессоры
В рамках выполнения одной хитрой задачи, потребовалось написать скрипт, который будет запускаться по cron и что-то делать с MODX.
Проблемы, в общем то нет, вопрос изучен, но выплыл интересный глюк.
А именно: не работали процессоры для создания/обновления ресурсов.
То есть, процессор для логина — нормально, контекст mgr — нормально, а при попытке создать ресурс — просто пустая error.
Выложил вопрос на официальном форуме и никто мне не ответил. Пришлось разбираться самостоятельно, глубоко копая исходники.
Проблемы, в общем то нет, вопрос изучен, но выплыл интересный глюк.
А именно: не работали процессоры для создания/обновления ресурсов.
То есть, процессор для логина — нормально, контекст mgr — нормально, а при попытке создать ресурс — просто пустая error.
Выложил вопрос на официальном форуме и никто мне не ответил. Пришлось разбираться самостоятельно, глубоко копая исходники.
Как не хакать сторонние классы
Бывает, что вы используете какой-то сниппет или компонент, и он немного вас не устраивает. Вам нужно поправить буквально пару строк, но вы понимаете, что при обновлении эти измения пропадут.
Что же делать?
Все просто — нужно расширить сторонний класс своими методами. По сути, это очень похоже на «классные процессоры», только без процессоров и использовать можно везде — это стандартная возможность ООП.
Что же делать?
Все просто — нужно расширить сторонний класс своими методами. По сути, это очень похоже на «классные процессоры», только без процессоров и использовать можно везде — это стандартная возможность ООП.