Задать вопрос
  • Как лучше сбросить кэш пользователей сайта?

    Spartak-2205
    @Spartak-2205
    Разработка и создание сайтов
    Как вариант, можно воспользоваться функцией filemtime
    echo '<img src="img.png?'.filemtime('img.png').'">';
    Ответ написан
    2 комментария
  • Как правильно делать по бэм?

    iiiBird
    @iiiBird Куратор тега CSS
    Пока ты спишь - твой конкурент совершенствуется
    почему вы всегда забываете, что блоки вы можете плодить как угодно и где угодно. вкладывать блоки внутрь блоков тоже сколько угодно.
    в твоем случае, если у тебя меню получается слишком громоздким, то сделай из него отдельный независимый блок.
    который даже к header может не относиться. т.е. внутри .top-header у тебя будет блок .main-navigation или .main-menu
    и использовать уже сможешь его не только в хедере, а где угодно.
    Ответ написан
    4 комментария
  • Как PHP код понимает, где находится БД MySQL?

    Recosh
    @Recosh
    Программист студент
    База mysql по умолчанию работает через TCP подключение, порт 3306. В конфигурационном файле будет указан адрес (host) 127.0.0.1 или localhost, что означает, что подключаемся сами к себе.
    Ответ написан
    1 комментарий
  • Заменяема ли папка Windows?

    Jump
    @Jump Куратор тега Windows
    Системный администратор со стажем.
    Нет.
    Не заменяема, Работать не будет.
    Ответ написан
    4 комментария
  • Какая среда разработки на JavaScript для продвинутых?

    DollyPapper
    @DollyPapper
    Вебшторм это одна из множества IDE предлагаемых компанией JetBrains. У нее на той же самой основе есть IDE для питона, го, сишарп, руби и т. д.
    ИМХО это самые лучшие и удобные IDE для разработки, т. к. имеют в себе множество инструментов из коробки, отличный intellisense, и главное опять же - всё из коробки. Функционала для JS подобного вебшторму можно добиться например и в VSCode, но нужно писать конфиг и ставить кучу плагинов. Например мой конфиг для VSCode на данный момент идеально заточен под меня мне очень удобно им пользоваться, но там 1000 строк которые я добавлял и модифицировал порядка 2-3 лет, по мере того как узнавал новые, полезные для себя вещи в этой, не побоюсь этого слова уже IDE. Вопрос в том - а хотите ли вы пилить под себя что-то столько времени, или хотите сесть и работать.
    Ответ написан
    Комментировать
  • Как вывести ник автора поста, зная его id?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега Laravel
    $post->author->username, если у вас отношения в моделях нормально описаны.
    Ответ написан
    Комментировать
  • Почему перестал работать array_unique?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    А вся проблема в том, что ты не понимаешь, что делает "твой" код.
    И следовательно, не можешь его отлаживать.

    Это к вопросу о том, как легко и приятно быть программистом, когда код за тебя пишут другие.
    Ну вот оно тебе и прилетело в обраточку, это "приятно"

    Исходная задача алгоритмически примитивная
    И чтобы её не решить, надо совсем уж не годиться в программисты.

    Поэтому тебе надо сейчас либо собраться и решить задачу самостоятельно, продумав алгоритм и реализовав его простыми средствами - циклами и условными переходами. Без всяких красивых слов типа array_diff, array_filter и прочих. Потому что использовать синтаксический сахар можно только тогда, когда ты понимаешь, как он работает внутри. Если не понимаешь - то код надо писать руками, а не волшебными функциями.
    И после этого, понимая как работает твой код, ты сможешь заняться отладкой, запуская его, и выводя промежуточные результаты.
    Либо, если не выйдет, то продать компьютер и идти работать в макдональдс.

    А вот это вот как у тебя сейчас - "ой мне один добрый дядя написал кодик, но он ниработаит, давайте другой добрый дядя мне его починит" - это не будет работать. Два раза тебе помогут, но постоянно жить чужим трудом не получится. А "программист", который не умеет писать код сложнее уровня "вайл муэскуэль фетч эррей" никому не нужен.

    что такое array_filter? Это реализация примитивного цикла,
    foreach ($array as $key => $value) {
        if (!условие фильтра) {
            unset($array[$key]);
        }
    }

    что такое array_diff? Это реализация чуть более сложного алгоритма, когда мы перебираем первый массив, и смотрим, есть ли такой же элемент во втором. Если нет - то записываем это значение в третий.
    И так далее.
    Ответ написан
    1 комментарий
  • Стоит ли работать специалистом техподдержки в банке?

    hint000
    @hint000
    у админа три руки
    Рекомендую поработать там один год. Кое-какой полезный опыт это даст (в том числе soft skills поднимите), но долго засиживаться не стоит. Некоторые начинают уважительно относиться, увидев в резюме, что вы работали в банке. Не знаю почему (объективных причин вроде нет), но такие стереотипы имеют место. Так что поработайте. Возможно, вас выжмут, как лимон, но за один год не успеете сдохнуть, зато соберёте небольшую финансовую подушку для поиска другой работы.
    Ответ написан
    1 комментарий
  • Как перейти по ссылке передавая запрос POST через PHP?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Никак

    РНР не ходит по ссылкам. По ним ходит браузер.
    Попробуй научиться отличать одно от другого.
    Ответ написан
    Комментировать
  • Как реализуется вывод сообщения об отсутствии соединения?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    window.addEventListener('online', () => {
      // связь есть, скрыть уведомление
    });
    
    window.addEventListener('offline', () => {
      // связи нет, показать уведомление
    });
    Ответ написан
    2 комментария
  • Как правильно писать catch в php?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Для того чтобы правильно писать catch, надо писать осмысленный код.

    А здесь мы наблюдаем очаровательный пример карго-культа.
    Узнав, что "толстый контроллер - это плохо, а сервисы - это хорошо", автор небрежным движением руки замел весь мусор под ковёр перенёс весь код из контроллера в "сервис". Ну а что? Контроллер худой, весь код в сервисе!
    Тот факт, что сама кривая структура проекта осталась, по сути, той же самой, нас не смущает.
    Как и то, что сервис вдруг начал выполнять функции НТТР контроллера и кидать почему-то НТТР исключения. Что с этими исключениями делать в случае, если тот же сервис будет вызван из консольной команды - загадка.

    Но самое забавное, что при всём при этом контроллер всё равно пытается выполнять работу модели. Казалось бы, какое отношение интерфейс для обслуживания НТТР запросов имеет к транзакциям в базе данных? А вот поди ж ты!

    Чтобы сделать этот код осмысленным, контроллеру всё-таки придется потрудиться, и выполнить какую-то работу самому, а не перекладывать на "сервис". А так же отдать модели то что ей принадлежит.

    В общем транзакцию перекинуть в createDefault. причём не напрямую, а ещё ниже - в слой для работы с БД. Стартовать транзакцию до валидации данных - это как бы *не совсем логично*, мягко говоря. И в итоге, как по волшебству, весь этот говнокод исчезнет как страшный сон.
    При этом в параметрах передавать не НТТР реквест чохом, а осмысленный набор параметров, вынутый предварительно из реквеста!
    В частности, если модель сама проверяет права доступа, то и передавать ид пользователя из авторизации.

    При этом модель не должна кидать НТТР исключения. Она должна кидать исключения бизнес-логики. Которые контроллер уже может ловить и транслировать в хттп. Но тут видимо уже сложнее, поскольку это ж ларавель судя по всему.

    В любом случае, уж catch (Exception $e)-у тут точно не место

    Но это если рассматривать твой конкретный случай.
    В общем же случае правильный код написал Илья.

    То есть внутри трая операции с БД и коммит.
    в кетче роллбэк и перевыброс исключения. Только ловить надо Throwable

    try {
      DB::beginTransaction();
      // запись в БД
      // запись в БД
      // запись в БД
      DB::commit();
    } catch (\Throwable $e) {
      DB::rollBack();
      throw $e;
    }
    Ответ написан
    2 комментария
  • С помощью чего сверстать эту часть тележки?

    smilingcheater
    @smilingcheater
    Внимательно прочитайте htmlbook.ru/css/border-radius и посмотрите на странице все примеры использования
    Ответ написан
    Комментировать
  • Какие преимущества у Elasticsearch в связке с MySQL перед самим MySQL?

    ElasticSearch сильно превосходит MySQL в плане качества полнотекстового поиска.
    Ответ написан
    Комментировать
  • Как правильно реализовать метод восстановления пароля по уникальному ключу?

    REZ1DENT3
    @REZ1DENT3
    web-developer
    В последнее время, делаем с помощью подписанных url.
    https://laravel.com/docs/8.x/urls#signed-urls

    use Illuminate\Support\Facades\URL;
    
    return URL::temporarySignedRoute(
        'unsubscribe', now()->addMinutes(30), ['user' => 1]
    );


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

    Объясните мне почему программист должен гуглить на английском?
    Вас кто-то заставляет? Не хотите — не гуглите. Возможные причины вы написали в вопросе.

    Ведь там все-таки хоть ты и знаешь английский, но русский то знаешь лучше, а значит на русском ты больше поймешь, чем на английском.
    Наоборот, удобнее оперировать терминами на одном языке и в программировании таким является английский. Мне проще искать на английском, чем пытаться сообразить, как перевести то, что мне нужно.
    Ответ написан
    Комментировать
  • Почему нужно гуглить на английском?

    Adamos
    @Adamos
    Насколько я вижу, ваш вопрос в последнее время взялись активно порешать автоматически.
    Веб завален сайтами, представляющими собой корявый машинный перевод StackOverflow и других популярных англоязычных профессиональных сайтов.
    Понять, что они там напереводили, зачастую сложнее, чем просто прочесть оригинал.
    Ответ написан
    Комментировать
  • Как получить значение выбранного элемента select?

    @mikhailivanko
    Ответ написан
    Комментировать
  • Какие используете единицы измерения при верстке?

    Ankhena
    @Ankhena Куратор тега CSS
    Нежно люблю верстку
    Какие используете единицы измерения при верстке?

    Подходящие!
    Для решения разных задач используются разные единицы измерения

    примеры

    1. Размер шрифта удобно писать в px, em и rem.
    Если он фиксированный, то это px.
    Если зависит от настроек пользователя, то rem. Для html задают font-size: 62.5%, для body font-size: 1.6rem в итоге для стандартных настроек получают изначальные 16px, но для удобства расчетов в этом случае 1rem=10px.
    Если размер шрифта зависит от размера шрифта родителя, то используют em, например, заголовок должен быть в 1.2 раза крупнее текста. h1{font-size: 1.2em}
    А может быть мне нужен адаптивный шрифт, чтобы на всех экранах слово занимало всю ширину, тогда vw vh

    2. Границы. Обычно толщина границ не зависит от шрифта или размеров блоков, значит, px
    border: 1px

    3. Блоки.
    У блоков могут быть разные зависимости.
    Например, четверть родителя -> проценты %
    Или фиксированная -> px
    Или зависит от ширины/высоты вьюпорта -> vw vh
    Или зависит от шрифта -> ch (Ширина символа 0 в шрифте текущего элемента.)

    4. Отступы.
    Могут зависеть от шрифта, могут быть % от ширины блока или фиксированными в px.

    Это не все варианты, все мне, наверное, так сразу и не перечислить
    Ответ написан
    2 комментария
  • Как разделить разряды числа?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    console.log(new Intl.NumberFormat().format(130000.3948));
    // "130 000,3948"
    Ответ написан
    Комментировать