Павел Гвоздь

Павел Гвоздь

С нами с 31 мая 2015; Место в рейтинге пользователей: #2
Павел Гвоздь
01 ноября 2020, 09:11
-1
Ты прикалываешь там чтоли? Я вопрос конкретный задал. При чём тут мой сайт?
Павел Гвоздь
01 ноября 2020, 09:05
0
Ну например, мне надо вывести статьи через Ajax на сайте при помощи сниппета pdoResources. Как это сделать с помощью данного компонента безопасно, не прибегая к созданию дополнительных сниппетов?
Павел Гвоздь
01 ноября 2020, 08:48
-1
Ну и хрен с ним. При чём тут это? Мы сейчас обсуждаем одно, а ты тянешь куда-то в другую сторону.
Павел Гвоздь
01 ноября 2020, 08:47
0
Я не понимаю тебя. Ты пишешь сначала
сколько угодно запросов в бэкэнд с любыми параметрами
а теперь говоришь
посмотреть какие параметры отправляются и подставить свои
Я не вижу ничего страшного в этом.
Павел Гвоздь
01 ноября 2020, 08:45
-2
Ты о чём вообще? Не надо равняться на WP при внедрении решений, это чревато вот такими дырами в безопасности. Если надо обращаться к своему сниппету – пиши кастом.
Павел Гвоздь
01 ноября 2020, 08:42
-1
можно доработать и как бы не против предложений
Я уже написал предложение.

если вы видите где-то уязвимость
Разве имея доступ к pdoResources сделать запрос к таблице modUser нельзя? Это так, навскидку. Я не хакер, у них голова работает гораздо интенсивнее в плане всяких SQL-инъекций.
Павел Гвоздь
01 ноября 2020, 08:39
-1
если на сайте доступен AJAX вызов, то любой человек, вне зависимости стоит мой компонент на сайте или нет, может точно также отправлять сколько угодно запросов в бэкэнд с любыми параметрами
Вот тут подробнее, пжл.
Павел Гвоздь
01 ноября 2020, 08:32
-1
По безопасности там отдельная тема – ниже написал. А касательно допуска только определённых сниппетов, не значит, что это безопасно. Ответственный программист может и позаботится о том, насколько безопасно давать доступ к тому или иному сниппету. А вот учитывая то, что я вижу на клиентских сайтах, большинство, к сожалению, не являются ответственными программистами и если потребуется, без раздумья дадут доступ к тому-же pdoResources. Представь, что можно натворить из фронта, имея доступ к pdoResources и имея возможность указывать туда любые параметры для вызова.
Павел Гвоздь
01 ноября 2020, 08:28
0
А давать на фронт возможность указывать любые параметры для обращения к сниппету разве правильно? Может лучше и безопаснее сделать указание параметров в бекенде (хз, в системной настройке пусть или где-то ещё) и к каждому сету параметров давать свой ключ, а на фронте обращаться к сниппету указывая ключ сета параметров, который будет в бекенде подтягиваться уже и применяться к вызову сниппета?
Павел Гвоздь
01 ноября 2020, 08:13
0
Логика инсталляции как-то усложнена по-моему. В чём принципиальное отличие от AjaxSnippet? Кроме более сложного подхода в использовании, конечно. =)

UPD:
Всё, сорри, понял. Это в принципе другой компонент, позволяющий «вызывать» сниппеты через Ajax запросы. Ок.
Павел Гвоздь
17 октября 2020, 10:50
0
Я когда увидел, как моя подруга работает в Excel, как во вспомогательном редакторе для построения огромного числа SQL запросов, то мягко говоря ох… л.
Павел Гвоздь
11 октября 2020, 10:04
1
0
$id = 5268;

$modx->runProcessor('resource/delete', [
    'id' => $id,
]);
$modx->runProcessor('resource/trash/purge', [
    'ids' => $id,
]);
Павел Гвоздь
10 сентября 2020, 20:11
+1
1) 2.7Мб первое изображение, да ещё и не под катом?! joxi.ru/a2X5gn6hDRqekA Нужно сжимать, хотя бы из уважения к сообществу.

2) Скройте код по кат.
Павел Гвоздь
16 августа 2020, 10:10
+2
На мой взгляд куда правильнее глобальное хранить в глобальном классе microMODX. Как уже сказал Василий выше:

в чанк могут передать свои собственные переменные $resource и $user
и такое довольно часто происходит. Потому, я считаю, это очень весомый аргумент. Как ты в чанке потом до глобальных свойств доберёшься?

А если уж очень хочется «попроще» писать, то Баха дал рабочий вариант выше.
Павел Гвоздь
14 августа 2020, 10:17
0
а вот к fenom бывают вопросы
Какие?
Павел Гвоздь
14 августа 2020, 05:45
0
Гляньте в код сниппета. Он обрезает всё что после двоеточия включительно. Ваш ключ AND:consist:= превращается в опцию AND. А несколько переданных вами одинаковых ключей в массиве само собой превратятся в один. То бишь ваши несколько AND:consist:= в массиве становятся одним (последним присвоенным) элементом.

Данная задача решается через where + leftJoin на стороне вызова сниппета. Джойните опции, по которым осуществляете выборку и в where пишете:
'where' => [
    'consist = "first_value"',
    'consist = "second_value"',
],
без ключей.
Павел Гвоздь
14 августа 2020, 05:24
+1
Феном учите, какие ещё модификаторы… эта дрянь нормально никогда не работала, а поддерживать сайт с этим колдунством в коде просто отвратительное занятие.
Павел Гвоздь
07 июля 2020, 07:57
0
Нет. Можно юзать беслптаную. Главное выпустите ключ. И ознакомьтесь с правилами бесплатного ключа tech.yandex.ru/maps/jsapi/doc/2.1/terms/index-docpage/#index__conditions