Задать вопрос
  • Зачем во Vue запросы выносят в services?

    Kozack
    @Kozack Куратор тега Vue.js
    Thinking about a11y
    1. Для упрощения кода. Скажем, чтобы не писать каждый раз всю конструкцию аля
      axios.get(ENDPOINT + '/api/' + API_METHOD, {
        params: {
          id
        }
      })
      .catch
      ...

      Делается обёртка, условная функция getUser(id). В неё выносится вся логика по работе с запросом, определение маршрутов АПИ, обработка ошибки и так далее. Наружу торчит только одна функция и параметр.
    2. При работе с TS это проще типизировать. Намного легче описать типы принимаемых параметров и возвращаемый тип для нескольких функций, чем описывать универсальную конструкцию для доступа к любым методам апи.
    3. Ну и наконец: сервис можно вызывать прямо в компонентах. Вызывать методы АПи не обязательно внутри Vuex. Доже чаще это должно выполняться внутри отдельных компонентов, каждый из которых работает с одним-двумя апи, а не со всем набором.
    Ответ написан
    4 комментария
  • Внедрение js-инъекции, это как? Я правильно понял?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Нет
    Ответ написан
    Комментировать
  • Как сделать фильтр товаров на сайте?

    Stalker_RED
    @Stalker_RED
    Это называется фасетный поиск или фасетный фильтр.
    Теперь, обладая знанием о том, как такая штука называется, ты легко найдешь и туториалы и готовые реализации.
    Ответ написан
    Комментировать
  • Как делать поиск по бд mysql на php?

    @andreyzvd
    Backend Developer
    Функция mysqli_real_escape_string() должна вызываться с двумя параметрами

    PS.: ваш php стар как г..но мамонта
    Ответ написан
    Комментировать
  • Профит смены ОЗУ 4х8 на 2х16?

    @d-sem
    Вроде как в спецификации 450 пишется, что в режиме 3200 4 плашки не работают, а частота падает до 2666 или ниже. Уточнить этот момент для своей карты и посчитать профит

    Также в режиме 3200 вообще обычно работают только 2 слота памяти из 4.

    Т.е. надо смотреть бенчи вроде https://ru.gecid.com/prtart.php?id=49680 Или вообще найти нужный бенч. Явно вопрос рассмотрен.

    По факту - врят ли заметите

    Плюс еще ссылка https://community.amd.com/t5/processors/problem-wi... В конце ТС написал что обновил БИОС и запустил память в 2933
    Ответ написан
    Комментировать
  • Ноутбук на AMD или intel?

    @cheeroque
    Ryzen 5 4600H. Ноутбуки на третьей серии стоят плюс-минус столько же, но ощутимо медленнее. Так что не нужны.
    Ответ написан
    1 комментарий
  • Зачем нужен hash?

    iiiBird
    @iiiBird
    Пока ты спишь - твой конкурент совершенствуется
    это защита от Cross-Site Request Forgery https://cheatsheetseries.owasp.org/cheatsheets/Cro...
    данный hash формируется на сессию. вот он и проверяется при клике, что клик сделан именно с сайта вк, а не подделан с другого сайта
    Ответ написан
    Комментировать
  • Как снизить зависимость от разработчиков?

    Xuxicheta
    @Xuxicheta
    инженер
    1. Требуйте хорошего покрытия тестами. Вы получите инструмент для проверки работоспособности, более надежный код и более понятный. Потому что хорошо написанный код проще тестировать, и разработчикам придется писать внятно.
    2. Наймите хотя бы одного хорошего профессионала, чтобы он следил за всеми. Дешевые разработчики, если дать им волю, справляются с задачей, но пишут неподдерживаемый код.

    Из этих пунктов следует один вывод. Хорошо это всегда дорого, по другому не бывает.

    CMS или фреймворк без разницы, при глубокой кастомизации CMS будет использована как фреймворк так же. И лучше бы это была хорошо спроектированная CMS.
    Ответ написан
    2 комментария
  • Слетит ли гарантия, если поставлю Пингвина с Окнами?

    smorman
    @smorman
    When In Rome do as The Romans do...
    Об этом писалось уже мульён раз.
    Было разъяснение от Межрегионального центра защиты прав потребителей.
    Есть куча прецедентов, когда в судах с лёгкостью выигрывали у продавцов и производителей кейсы на эту тему.
    Установка любого, другого софта в девайсы в период его гарантийного срока не является причиной отказа в гарантийном обслуживании!!!

    Загуглите и всё увидите сами.
    Ответ написан
    Комментировать
  • Как быстро заливать на сервер (Debian) большие объемы данных?

    @Tabletko
    никого не трогаю, починяю примус
    Проверьте канал между вашим сервером и домашним компом при помощи iperf. Если покажет числа приблизительно похожие на заявленные провайдером, ищите узкое место дальше. Возможно диски не успевают быстрее читать или писать. Возможно на принимающей стороне есть какая-либо посторонняя нагрузка, которая не позволяет быстрее записывать. Так же убедитесь, что с обоих сторон гарантированная полоса, иначе все эти тесты можно будет поделить на 10, т.к. сейчас у прова нет нагрузки и скорость по тарифу, а через десять минут пров перегружен и вы делите внешний канал со всеми клиентами провайдера.
    Ответ написан
    Комментировать
  • Как реализовать активацию пользователя через email на React и Nginx?

    @dmtrrr
    Backend developer
    Зачем react приложению ловить эту ссылку? Backend должен обработать этот запрос и редиректнуть пользователя на нужный url
    Ответ написан
    1 комментарий
  • Как увеличить обьем используемой видео памяти?

    @antonwx
    Во-первых встройка использует под свои нужды часть оперативки. Если вдруг ей будет не хватать, она дополнительно себе по ходу довыделит нужное количество памяти.
    Во-вторых a6 это настолько помойный проц (с ещё более помойной встройкой), что память его не спасёт. Его ничто не спасёт. Кроме утилизации и замены на что-то адекватное.
    Ответ написан
    1 комментарий
  • Есть смысл изучить документацию по ларавел 5 на laravel.ru или логичнее стартовать сразу с документации ларавел 8 на laravel.com?

    402d
    @402d
    начинал с бейсика на УКНЦ в 1988
    https://laravel.ru/posts/720
    Вот это читали ?
    Имхо главное пункт 4 и 2

    Документация читается первый раз обзорно и освежается в голове по мере необходимости.
    Главное понять принципы самого фреймворка. В каком месте и через что должен быть нужный сейчас вам для задачи кусочек кода. Пишите интересную Вам задачу. Рефакторте по мере поступления новых знаний.

    Я это к тому, что Язык(PHP) - буквы, документация по методам Laravel - словарь.
    А нужны еще правильно строить предложения - рамки фреймворка .
    цитирование - сторонние библиотеки ( В реальности их доля может многократно перекрыть сам фреймворк)
    А вот тут нужная из них может оказаться легаси (устаревшей)
    Ответ написан
    1 комментарий
  • Можно ли играть на ryzen 7 2700 без видеокарты в 60 FPS ,в более-менее современные игры?

    @antonwx
    ryzen 7 2700 без видеокарты

    У 2700 нет встройки. Оно даже изображение не покажет.
    Ответ написан
    Комментировать
  • Почему в среде Linux админов Vim - это тру, а Nano - для слабаков?

    CityCat4
    @CityCat4
    Дома с переломом ноги
    Традиции - они такие традиции. Просто vi есть везде и всюду, даже на хостах ESXi (и это единственный текстовый редактор там) - поэтому видимо и пишут так. На самом деле всем плевать. Я вообще mcedit использую и не комплексую :)
    Ответ написан
    4 комментария
  • Как правильно писать ТЗ?

    anton_reut
    @anton_reut
    Начинающий веб-разработчик
    ПМ хотя-бы немного должен быть разработчиком, с хотя-бы поверхностными знаниями, иначе это будет ад как для него так и для программистов.
    А тз обычно делится на две понятные части: бизнес логика и технические требования.
    Ответ написан
    Комментировать
  • Как реализовать вход в систему на VUE.JS?

    yarkov
    @yarkov Куратор тега Vue.js
    Помог ответ? Отметь решением.
    Он и в DevTools -> Network все ваши запросы посмотреть может, с заголовками и ответами. Вопрос-то в чём?
    Ответ написан
    7 комментариев
  • Как добавить пользователя на нескольких primary групп,на Linux?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    1. Может быть только одна Primary group и никак иначе
    2. не факт, что все группы пользователя можно найти в файлах, мало ли как pam настроен.
    3. А так - в /etc/passwd primary группа, в /etc/groups все остальные группы
    Ответ написан
    1 комментарий
  • Fullstack: составить дорожную карту?

    approximate_solution
    @approximate_solution
    JS Developer. Angular\React\Vue\Ember
    я себя вижу как будующий фуллстек

    Я себя тоже когда-то видел новым Линусом Торвальдсом, но жизнь не щадит.

    поэтому можно по подробнее про бэк и фронт.

    Каким образом вы хотите стать фуллстэком, если на таком банальном шаге как - поиск информации, вы уже делаете огромный затуп.

    Алгоритм действий для вас -
    1. Выбор сферы -> хочу работать там-то.
    2. Выбор языка -> определился со сферой, есть такие вот языки, на которых реализуется функционал.
    3. Изучения языка и инструментария по выбранным выше аспектам
    - Вопросы - (нужна ли математика в данной сфере, если нужна - то какой уровень математики, какой уровень computer science, что нужно знать из базы).
    - от фронта до бэка(если бизнес модель и задача позволяет одновременно реализовывать фронт и бэк без боли и огромного количества поглощаемой информации).
    4. Учитьсяи работать от 2-3 лет(если есть желание быть фуллстэком) и до бесконечности, желательно сразу идти в офис что бы перенимать опыт у более опытных товарищей).

    я себя вижу как будующий фуллстек

    Я когда вижу Резюме - фуллстэк - 2 года опыта, немного начинает подташнивать. Нормальный фронт, или нормальный бэк - это 2-3 года работы, когда задача решается так как нужно, и +\- не приходится переделывать. Нормальным фуллстэком вы станете лет через 5, поэтому начните с алгоритма, и далее если хватит сил - уже прыгайте на второй корабль.
    Ответ написан
    2 комментария
  • Нужно ли проверять каждое обращение к БД на php?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Очень хороший вопрос.
    Он вызван одной из родовых болезней РНР, в котором по какой-то причине именно операции с базой данных традиционно проверяются на каждый чих. При этом на все остальные операции почему-то никто не обращает внимания.

    Большинство складывателей букв на РНР об этом не задумываются вообще, и очень хорошо что тебе пришел в голову этот вопрос. А ответ на него очень простой:

    Проверять обращения к БД не нужно вообще

    (за исключением нескольких специальных случаев, когда есть определенный сецнарий обработки ошибки)
    Если же такого сценария нет, то никак проверять не нужно. Просто потому, что обращения к БД ничем не отличаются от любого другого кода.
    И поскольку ты не проверяешь каждый include или там оператор деления, то не нужно и проверять запросы к БД. Их надо оставить в покое. И первый, и каждый по отдельности, и все 5 разом.

    А вот что нужно сделать - это договориться с РНР, чтобы он сам сообщал тебе об ошибках в запросах. Для mysqli надо написать перед коннектом
    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

    Для ПДО при соединении выставить в настройках соединения

    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION

    Всё. Больше ничего для обращений к БД делать не надо.

    А вот обработчик ошибок, общий для всего кода, а не только для работы с БД, настроить желательно.
    Чтобы AJAX-скрипт подписки получал соответствующий НТТР статус при любой ошибке, которая может возникнуть на сервере.
    Ну и разумеется AJAX-скрипт подписки должен проверять НТТР статус, и обрабатывать ответ только если статус= 200
    Пример обработчика можно посмотреть здесь

    Если же надо убедиться, что все пять запросов выполнились без ошибок, то для таких целей служат транзакции.
    Суть транзакции именно в том, что либо выполнияются либо все запросы, либо ни одного.
    Если заключить все 5* запросов в транзакцию, то если при выполнении одного из них произойдет ошибка, то изменения, сделанные остальными, автоматически откатятся!

    *На самом деле в транзакцию имеет смысл заключать только запросы, изменяющие данные. То есть все, кроме первого.

    Соотсветственно, если ПДО настроен на выброс исключений, то при ошибке запроса
    - пдо выбросит ислючение
    - которое будет поймано обработчиком ошибок
    - который выведет код ошибки и завершит работу РНР скрипта
    - при завершении скрипта РНР закроет соединение с БД
    - БД при закрытии соединения автоматически откатит незавершенную транзакцию

    причем без обработчика ошибок будет всё то же самое, только клиенту уйдет код не 500 а 200

    то есть для того чтобы убедиться в том что все запросы выполнились корректно, надо

    1. выставить для ПДО режим исключений
    2. перед первым запросом написать $pdo->begin();
    3. после последнего запроса написать $pdo->commit();
    Ответ написан
    4 комментария