Всего 123 794 комментария

weranda
30 апреля 2023, 09:09
0
Есть два вопроса к вам:
1. Знаете реализацию того, что нужно?
2. Аргументировать возможность загрузки файла — почему не очень хорошая идея?
Андрей
30 апреля 2023, 00:03
0
Выпиливать проверку авторизации в компоненте. Но давать возможность загрузить файлы гостю не очень хорошая идея.
Павел Бигель
29 апреля 2023, 22:47
0
Что это? Зачем это?

Удачи выполнить такой запрос на более менее большой бд
$result = $connection->query("SELECT * FROM $table");
Илья
29 апреля 2023, 12:08
0
Данный скрипт был написан для сайта на котором BackupMODX, по ряду причин не устанавливался корректно и не выполнял свои функции.
Артур Шевченко
28 апреля 2023, 22:05
+1
mSync всё требуемое может. Более того, в mSync руками можно ничего не прописывать, а задать совокупность характеристик товара, по которым он будет искать соответствие. А если вдруг что-то потребуется чего из коробки нет, всегда можно плагином докрутить.
Денис Усманов
28 апреля 2023, 16:02
-1
Могу дать развёрнутое объяснение по данной задаче, напишите мне в ЛС в ТГ (указан в моем профиле). После обсуждения в ЛС, могу сюда сам или Вы самостоятельно напишите, какое я предлагаю решение. И скажу заранее, возможно mSync приобретать даже не обязательно…
Руслан Алеев
28 апреля 2023, 13:15
0
В FormIt есть встроенная защита от спама, в виде математического уравнения, см. docs.modx.com/current/ru/extras/formit/formit.hooks/math Но мало видел, что ее используют, хотя, думаю, что нормально работает.
Эдуард
28 апреля 2023, 13:00
0
На многих сайтах я делал простой append (точнее prepend) в форму с фиксированной строкой, не заморачивался с генерацией случайно строки.
Спама было мало, но тоже подтверждаю на некоторых сайтах спам-боты пробивали и сыпался спам, тут как повезет. Так как способ простой, то ставил в формы по умолчанию на все сайты. Защищает от ботов, которые не умеют в JavaScript (интересно много таких сейчас?)
Денис Усманов
28 апреля 2023, 10:04
0
Тоже хотел сделать именно при наведении, но решил, напишу сначала простенькую статью. А там глядишь люди дадут хорошие советы, и я перепишу статью… Благодарю! За это утро, мне уже несколько человек дали хорошие решения, которые я обязательно тут покажу!
Константин Ильин
28 апреля 2023, 10:00
+1
Если вкратце у меня работает так (Подсмотрено у Артур Шевченко, спасибо ему)
1. тоже генерируется рандомная строка
2. тоже проверяется через contains
3. и полю nobot эта рандомная строка присвоится только(!) при наведении на форму, а у вас как я понял сразу.

У меня полет нормальный
{set $secret = md5(rand(0,999999999))}
{'!AjaxForm' | snippet :[
    ....
    'secret' => $secret ,
    'validate' => 'vscval:contains=^'~$secret~'^'
    ....
]}

//В форме
<input type="hidden" name="vscval" style="display:none" data-vscval="{$_pls['secret']}">

//Js
function watchForms(){
    if(document.querySelector('form')){
        document.querySelectorAll('form').forEach((ff) => {
            ff.addEventListener('mousemove', (e) => {
                if(ff.querySelector('input[name="vscval"]')){
                    let inpSecret = ff.querySelector('input[name="vscval"]'),
                        inpSecretData = inpSecret.getAttribute('data-vscval');
                    if(inpSecret.value == ''){
                        inpSecret.value = inpSecretData;
                    }
                }
            });
        });
    }
}
watchForms()
Андрей Степаненко
28 апреля 2023, 09:24
0
Есть отличная статья на мой вгляд
Показывает что сейчас произошло с GPT
habr.com/ru/articles/727092/

Процесс идет и его не остановить)
Александр Мельник
28 апреля 2023, 09:04
+2
И в ваших словах есть правда.
Видимо мир вообще устроен циклически. Мы сначала изобретаем технологии, чтобы нам проще жилось, а затем технологии отупляют нас и уничтожают.
Ведь получается, что через какое то количество лет и правда появится профессия «оператор чатбота», цель которого будет уже не написание кода, а формулировка правильных вопросов. И тогда человек вообще разучится программировать. Как мы уже разучились считать, после того как изобрели дешевые калькуляторы. Моей маме 80 лет и она прекрасно в уме умножает 3 значные числа, А на листке в столбик может делить огромные числа. А я уже не могу. Чтобы умножить 23 на 56 лезешь за калькулятором. Или когда телефоны были стационарные, я помнил около 30 номеров — друзья со школы, другие важные номера. КОгда появились мобильные и их телеонные книжки — я с трудом вспоминаю свой номер телефона, не говоря уже о 30 других. Мы, как человеческий вид (ну хорошо, не буду говорить мы, скажу — я) тупеем, и это плата за использование технологий.
У Айзека Азимова есть фантастический рассказ, как люди в 2100 году заново изобретали таблицу умножения, видимо фантаст был прав)
Чтобы разорвать этот круг нужно остановится в какой то точке. Вот вы пишите, может гугл запретить. А было бы неплохо. По краней мере для программистов, чтобы гугл предоставлял доступ только к документации. А не к чужому коду и прочему. Хочешь чтото написать — будь добр изучи и напиши.
Но понятно что это мои фантазии…
Андрей Степаненко
28 апреля 2023, 09:01
0
Надо незабывать что есть ответственность, тестировани, отладка
Чем программисты как правило пренебрегают

Вот задача:
Написать скрипт вывода даты

А где здесь написано что его тестировать нужно????????
Проект менеджеры и другие постановщики задач глюбоко ошибаются в том что программист будет тестировать свой код
Они хотят конфетку готовую
Не зря существую тестироващики

Это как с заводом по производству машин
Инженеры делают свою работу
Менеджеры делают свою работу

Так достигается симбиоз полноценной работы: но в мире программирования почему то мнение у большенства что программист может и сплесать и спеть и покушать принесет
Константин Ильин
28 апреля 2023, 08:59
0
Оо здравствутйе! Я думал вы пропали совсем и даже сильно не надеялся на ответ)

Тенденция такая сейчас, что все компоненты переходят на чистый js. Меня тоже сподвигло перейти на чистый js, около полугода пишу. В начале было не очень) Ну и помимо тендеции это лишняя подключаемая библиотека, например у меня на сайте нигде нет jQuery и тут его придется подключить.
Версия что сейчас в репозитории меня многим не устраивает и выпилить джеквери и переделать запрос по плиточкам по факту ничего кардинально не изменит.
Расскажите что не так и какие планы в целом?

мне примерно через месяц понадобится msOptionsPrice2, и не хотелось бы попасть в ситуацию когда купил msOptionsPrice2 и на след день вышла msOptionsPrice3.

И в целом для магазина три основных компонента, miniShop2, mSearch2, msOptionsPrice2. Если miniShop2 развивается нет нет, то последние два «отстают», извините меня за душноту опять же оба подключают jQuery.
Андрей Степаненко
28 апреля 2023, 08:55
-1
В современном мире разработчик вообще перестал думать, что програмирование это вообще то сложно.
Это люди такие)) А не разработчики как профессия
Тебе постоянно нужно учиться если ты профессионал и хочешь подтверждать свою квалификацию

Но очень много людей которые достигли чего то и сели на жопу
Андрей Степаненко
28 апреля 2023, 08:52
0
Есть другие истории)))

Надо мне сегодня было написать скрипт который бы брал файлы и отправлял их на email
Я 100% могу это сделать, но потрачу на это пару часов так как с bash не очень знаком
боту написал задачу, Выдал готовый код
#!/bin/bash

# Получаем email из первого аргумента
email="$1"

# Находим самый свежий файл  jpg
crt_file=$(ls -t /home/dir/*jpg | head -n1)

# Находим самый свежий файл png
key_file=$(ls -t /home/dir/*png | head -n1)

# Проверяем, что оба файла существуют
if [ ! -f "$crt_file" ] || [ ! -f "$key_file" ]; then
  echo "Ошибка: файл не найден"
  exit 1
fi

# Отправляем оба файла на указанный email
echo "Отправка файлов $crt_file и $key_file на $email"
echo "Текст письма" | mailx -s "Тема письма" -a "$crt_file" -a "$key_file" "$email"
Если ты профессионал программист то прекрасно понимаешь сколько времени тратиться на рутину которую ты 100% можешь выполнить
От этой рутины руки опускаются, а если есть кому вопрос задать и получить какую то информацию, то мочему бы и нет

Если уж на то пошло))
А давай те google запретим))) Чтобы не искать там информацию и будем книжками пользоваться
Александр Мельник
28 апреля 2023, 08:39
0
Знаете, я разуверился в возможности написания «атоматического» спамбота, когда не так давно произошло следующее.
Возникла на работе задача сделать быстрое решени по переносу сайтов с одного места в другое.
Как ее решал я — писал bash скрипты, которые по ssh выполнли создание архивов, дампы баз, потом подключались на другой сервер, туда все копировали, проводили постобработку типа сброса кеша, замены путей в файлах конфигураций и так далее.
Как ее решил мой коллега. Написал на jave программу которая тупо запускает браузер и в нем полностью имитирует все действия человека. Тоесть его программа сначала вошла на хостинг откуда нужно перенести, сама там авторизовалась, сама преешла на нужные страницу в панели хостинга, создала архивы, как это делал бы человек, скачала их. ПОтом авторизовалась на другом хостинге и там создала новый сайт, залила туда архив и так далее. Все это визуально у тебя перед глазами, ты только сидишь и смотришь.
И тут я понял, что при таких возможностях, нет никаких разумных способов отличить бота от человека. Только задавать вопросы боту, на которые ему будет сложно ответить.
Денис Усманов
28 апреля 2023, 08:31
+1
Согласен, случайная строка по сути тут как заготовка для более правильного решения… На днях буду прорабатывать этот момент.