• Как определить причину обрыва?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    . Сервер подключен по Wi-Fi

    Никак. Потому что обрыв возможен там, где есть провод. Там, где провода нет - не бывает и обрывов (ну или можно сказать - там постоянный вечный обрыв :) ). WiFi - для развлечений, для клиентских устройств. На нем нет никакой гарантии стабильной работы.
    Ответ написан
    Комментировать
  • Как определить причину обрыва?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Сервер подключен по Wi-Fi.

    Как уже совершенно справедливо сказано выше - ССЗБ. Подключите временно шнуром и посмотрите, изменится ли что-нибудь. Или по крайней мере включите 802.11w от скрипт-киддис.
    Ответ написан
    Комментировать
  • Как эффективно познакомить новичка с проектом?

    Kozack
    @Kozack
    Thinking about a11y
    Вот по моему давать новичку задачи в разных частях всей экосистемы ужасная идея.
    Закрепите его за одной фичей/модулем/классом/компонентом во всей вашей экосистеме. Пусть выполняет узкоспециализированные задачи и занимается исключительно этим. Познее список его обязанностей можно плавно расширять на фичи/модули/классы/компоненты, которые непосредственно связаны с тем, с чем он уже знаком.

    Возможно зона его ответственности никогда не покроет весь проект, но это и не нужно.
    Ответ написан
    1 комментарий
  • Как эффективно познакомить новичка с проектом?

    inoise
    @inoise
    Solution Architect, AWS Certified, Serverless
    А начать надо было давным давно с ведения архитектуры, документации, тасков и правил работы над проектом. Вы немного опоздали с этим всем, похоже.
    Ответ написан
    5 комментариев
  • Как сделать бэкдор или скрытого супер-пользователя на joomla?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    FairPlay сервис, предоплата (полная или поэтапная), договор.
    Ответ написан
    Комментировать
  • Как автоматически деплоить и собирать frontend?

    @vitaly_il1
    DevOps Consulting
    если у кого-то есть простые примеры, как это можно сделать без Jenkins

    с gitlab CI - https://docs.gitlab.com/ee/ci/quick_start/

    Но основной вопрос: как лучше сделать?

    Не уверен, что понял вопрос, но гляньте в примеры - это просто. Можно сделать при commit to master (==merge), можно при commit to branch with open PR и т.д. - все реализуется очень просто с любой CI.
    Ответ написан
    Комментировать
  • Зачем (в наше время) везде писать phpdoc комменты?

    Adamos
    @Adamos
    Если вы пишете исключительно классы-конверторы из числа в строку, документировать их, действительно, незачем.
    В нормальной же работе многие классы представляют собой переходник между уровнями логики, где метод - это оператор более высокого уровня, а его содержимое относится к более низкому. Так что даже прочитав текст метода, можно будет понять, что он делает, но не понять - зачем и к какому разделу бизнес-логики это действие вообще относится. А тут - комментарий первой же строчкой! От кодера, которому вдолбили в башку, что комментировать надо все, и только поэтому он не поленился сделать это и здесь тоже.
    Ответ написан
    2 комментария
  • Зачем (в наше время) везде писать phpdoc комменты?

    Kozack
    @Kozack
    Thinking about a11y
    • Не всегда то, что сейчас кажется самодокументированным кодом будет восприниматься так же спустя время.
    • Каким бы ни был хороший код, простое предложение с описанием для каких целей нужно это свойство, проще для восприятия, чем искать его по всему классу.
    • Это нужно для генерации документации. В которой будут не только названия свойств и методов, но и их описания. На русском, если нужно.
    • Если в проект приходит новичок, ему проще вникнуть имея документацию.
    • Некоторые IDE могут показывать подсказки с комментариями и доп инфой из phpdoc


    Как ты ни крути, документирование это крайне важно. Возможно, требовать комментировать вообще всё, с точки зрения компании, немного излишне. Но это может помочь в дальнейшем рефакторинге когда код немного выйдет из под контроля. Это такое ограничение, которое доставляет неудобства программисту, но сдерживает его от выстрела в ногу.

    Но, это всё справедливо в случаях, когда комментарии представляют собой чуть больше чем
    /**
     * @var int
     */
    private int $precision;
    Ответ написан
    2 комментария
  • Как правильно подготавливать к развёртыванию своего приложения файлы, находящиеся в npm/node_modules?

    Kozack
    @Kozack Куратор тега JavaScript
    Thinking about a11y
    Любая система сборки как то webpack или rollupjs. Суть в том, что они самостоятельно анализируют и формируют программу со всеми *min.js/*min.css и assets если есть.
    На прод заливается только конечный bundle
    Ответ написан
    Комментировать
  • Как узнать откуда был загружен iframe?

    @granty
    Откуда был загружен iframe никак не узнать (узнать-то можно, но в вашем случае это не поможет).

    1. яваскрипт не сработает, тк политика «Одинакового источника» (Same Origin Policy) запрещает доступ из ифрейма к window.top.location.href, если они имеют разные происхождения (грубо говоря - разные домены).
    Проверить window.top != window.self браузер даёт, а доступ к фактическому url из window.top - нет.

    2. на сервере проверять переменную $_SERVER['HTTP_REFERER'] (кто запросил загрузку страницы) смысла тоже нет - если у ифрейма установлен атрибут referrerpolicy:
    <iframe referrerpolicy='no-referrer'>
    реферер не будет прислан (будет, но только в IE/Edge и Safari_IOS).


    Но сделать то, что вы хотите - можно легко. На странице надо издать HTTP-заголовок CSP с директивой frame-ancestors:
    header( "Content-Security-Policy: frame-ancestors https://ваш_сайт.ru http://ваш_сайт.ru https://www.facebook.com https://facebook.com https://www.google.com https://google.com;" );

    это разрешит открывать эту страницу в ифрейме с собственного домена ваш_сайт.ru(без поддоменов!) по http:/https:.
    И сайтам facebook.com и google.com с www или без (но только если фэйсбук/гугль загружены по https: - а их и невозможно загрузить по http:).

    PS: если ваш сайт доступен и по www - добавьте в "волшебную" строку:
    https://www.ваш_сайт.ru http://www.ваш_сайт.ru
    Ответ написан
    Комментировать
  • Как правильно экранировать символы в SQL запросы, если нужно отправить HTML-код?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    HTML никак специально экранировать не нужно. И вообще ничего экранировать не нужно. Экранирование - это треш, угар, прошлый век и инъекции. Данные в БД надо просто посылать отдельно от запроса.

    Удивительно, что на этот вопрос подписалось ещё столько народу.
    Ну это я не знаю - как подписаться на вопрос "сколько будет шестью шесть?". Не "дважды два", но близко.
    Работа с БД - это самые основы пхп, которые обсосаны в каждом учебнике со всех сторон. Неужели всё так плохо, что этот вопрос вызывает столь живой интерес, чтобы попасть в список интересных на тостере?

    Причем твоя лично проблема здесь совсем не в том, "как экранировать". HTML никак особо экранировать не нужно, базе данных абсолютно всё равно, что ты внее вставляешь. Твоя проблема в том, что ты в принципе не знаешь пхп и путаешься в основах языка, используешь устаревшую версию, которая не будет работать на живом сайте. И даже самый базовый синтаксис тебя пугает. Поэтому извини, я буду писать ответ не для тебя, а для тех, кто, в который раз, задается этим вечнозеленым вопросом, но по какой-то причине не смог освоить базовые навыки работы с гуглем/яндексом.

    Чтобы вставить данные в mysql, и вообще никогда не думать ни про какое "экранирование", надо
    1. Все переменные в запросе заменить на знаки вопроса
    2. Подготовить запрос к исполнению
    3. Привязать переменные к знакам вопроса
    4. Выполнить запрос.

    Как я уже говорил, функций, которые начинаются на mysql, в языке давно нет. Остаются только те, которые начинаются на mysqli и PDO. Вот для них я и приведу примеры.

    mysqli
    $type = 'testing';
    $reporter = "John O'Hara";
    $query = "INSERT INTO contents (type, reporter) VALUES(?, ?)"; // заменем
    $stmt = $mysqli->prepare($query); // подготавливаем
    $stmt->bind_param("ss", $type, $reporter); // привязываем
    $stmt->execute(); // исполняем

    Важно! Чтобы этот код работал, сначала надо правильно установить соединение mysqli
    PDO
    $type = 'testing';
    $reporter = "John O'Hara";
    $query = "INSERT INTO contents (type, reporter) VALUES(?, ?)"; // заменяем
    $stmt = $pdo->prepare($query); // подготавливаем
    $stmt->execute([$type, $reporter]); // привязываем и исполняем

    Важно! Чтобы этот код работал, сначала надо правильно установить соединение PDO

    Также можно использовать сторонние библиотеки, с которыми все еще проще. Но использование сторонних библиотек почему-то пугат новичков хуже чем зомби на кладбище в безлунную ночь, поэтому настаивать не буду
    Ответ написан
    18 комментариев
  • Нормальная ли конфигурация пк?

    gecube
    @gecube
    системный администратор, программист... все дела..
    Ответить на вопрос можно только зная финансовые возможности и зная какие задачи будут выполняться на ПК
    В целом - выглядит относительно сбалансированно. Единственное, что ssd на 120ГиБ - это катастрофически мало. Рекомендую рассматривать модели объемом 256ГиБ - 512ГиБ. Тогда не будете испытывать болей навроде "винда накачала апдейтов - место закончилось"
    Ответ написан
    1 комментарий
  • Оцените сборку пк для игр за 60к?

    @iMaximus
    SSD 120 крайне не советую, даже только для системы. Минимум 256. Плюс, здравый смысл советует сейчас для игр покупать Ryzen 5 3600 Изначально хотел брать i5-9400f лет 10 сидел на intel, было тяжело решиться, рад что в итоге смог.
    Ответ написан
    Комментировать
  • Оцените сборку пк для игр за 60к?

    FeST1VaL
    @FeST1VaL
    Тихий
    Я бы взял вместо HDD на 2 тб побольше SSD... одна только колда около 180гб занимает) А большенство игр щяс уже вообщем то требовательны к SSD (так сказать дают приемущество во всяких шутерах)
    Ответ написан
    Комментировать
  • Влезет ли СВО в корпус?

    nidalee
    @nidalee
    Да и да.
    Но для 8700К хватит и Noctua DH-15.
    Ответ написан
    Комментировать
  • Ноут часто вырубается сам. Что делать?

    Zoominger
    @Zoominger Куратор тега Железо
    System Integrator
    Проверить температуру ЦП, если горячий - почистить кулер и поменять термопасту на ЦП.
    Ответ написан
    1 комментарий
  • Ноут часто вырубается сам. Что делать?

    solotony
    @solotony
    покоряю пик Балмера
    что делать .... если честно - отправить старого друга на заслуженный отдых и купить новый. 10 лет - срок для ноута немалый.
    Ответ написан
    Комментировать
  • У меня видеокарта 1660ti и я хочу включить ее через display port,но на пк нету разъема display port, что делать?

    @Drno
    Подключайте hdmi.
    А со своими бесполезными 144ГГц вы уже достали
    Ну или используйте переходник на dp
    Ответ написан
    2 комментария
  • Как отключить _id в коллекциях mongo?

    bootd
    @bootd
    Гугли и ты откроешь врата знаний!
    Его нельзя отключить, это уникальный id для каждого объекта. Но вы можете его переопределить, указав в модели своё значение. Вопрос лишь, накой оно вам нужно!!! Ну есть и есть, чем оно мешает
    Ответ написан
    6 комментариев
  • Что конкретно нужно изучить, чтобы создать свой игровой сервер?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Графы, дискретную математику, линейную алгебру, криптографию и статистику.

    Системное программирование, работу сетевого стека, протоколов IP TCP UDP TLS. Оценку и оптимизацию алгоритмов и контейнеров, параллельное программирование, работу с базами данных и транзакциями.

    Все зависит от того, для какой игры и насколько масштабный вы хотите сделать сервер.
    Ответ написан
    Комментировать