• Что не так в коде?

    like-a-boss
    @like-a-boss
    Признайся,тебяТянетНаКодМужика,ты—программный гей
    У вас просто опечатка в .cachce. Если мы говорим об английском, то должно быть .cache.
    Ответ написан
    Комментировать
  • Как передать данные сообщения в шаблон письма Lumen/laravel?

    glaphire
    @glaphire
    PHP developer
    Традиции есть традиции - ссылка на доку первым делом)
    https://laravel.com/docs/8.x/mail#via-the-with-method
    Там даже два способа - один через with, второй через свойства класса.
    Ответ написан
  • Как правильно обнавить данные laravel?

    pLavrenov
    @pLavrenov
    Разработка сайтов
    1) update сам вызывает save (save надо убрать)
    2) Можно использовать магию и итоговый вариант будет таким

    public function update(Request $request, Crud $crud){
            $crud->update([
                'name' => $request->get('name'),
                'email' => $request->get('email')
            ]);
            return redirect('/')->with('update', 'Вы успешно Изменили Данные');
        }


    Важный момент:
    - переменная $crud должна быть названа как в роуте
    - использовать валидацию
    Ответ написан
    Комментировать
  • Есть ли какой-то смысл делать сайт на symfony вмето laravel, с пиковой посещаемостью 10 000?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Нет.
    Ради странных фантазий о том что код, написанный Симфони тем же самым программистом будет работать в 10 раз быстрее чем код под Ларавель, менять точно не стоит.

    Ради будущего расширения проекта, если писать с соблюдением рекомендованных практик - вполне стоит, средний проект на Симфони обычно более расширяемый и поддерживаемый, чем типичное фигак-фигак и в продакшен на Ларе

    А вообще забыл самое главное сказать - фреймворк сам по себе составляет небольшую часть проекта. Вся логика все равно лежит в модели. И если писать с соблюдением минимального набора хороших практик, то сменить феймворк будет в принципе подъемной задачей.
    Ответ написан
    1 комментарий
  • Есть ли какой-то смысл делать сайт на symfony вмето laravel, с пиковой посещаемостью 10 000?

    pLavrenov
    @pLavrenov
    Разработка сайтов
    У Laravel огромнейшее сообщество и опытные лидеры. Шанс того что ты напишешь лучше весьма низок. Если тебе что-то не понравится можно отключить и сделать лучше. Но имхо кроме лишних часов разработки ничего из этого не выйдет.

    Все эти мнения форумные складываются только из того что каждый в интернете считает себя профессионалом.
    Ответ написан
    Комментировать
  • Есть ли какой-то смысл делать сайт на symfony вмето laravel, с пиковой посещаемостью 10 000?

    glaphire
    @glaphire
    PHP developer
    Нет. Фреймворк тут играет последнюю роль. 10000 человек в день это немного, меньше одного запроса в секунду в среднем, надо смотреть на нагрузку в пике. В любом случае надо анализировать слабые места - запросы к базе, количество веб серверов для обработки запросов, возможность кеширования и асинхронной обработки...
    UPD. У Вас в вопросе написано и пиковая нагрузка 10000, и 10000 за день, что в итоге?))
    Все равно результат нужно сводить к предварительному профилированию и только потом к тюнингу серверов или рефакторингу
    Ответ написан
    5 комментариев
  • Какими средствами можно осуществить прием звонков в самописной CRM?

    NeiroNx
    @NeiroNx
    Программист
    взять что-то типа этого: https://habr.com/ru/post/144293/ статься уже пылью покрылась: 8 лет
    Ответ написан
    Комментировать
  • Какими средствами можно осуществить прием звонков в самописной CRM?

    Sanes
    @Sanes
    WebRTC + программист.
    Ответ написан
    Комментировать
  • Как решить эту задачу(ЕГЭ информатика 2021)?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    Тут задачки постить запрещено, но какой-то код вы предложили, хотя и неправильный, поэтому заслужили подсказку. Вам бы я осоветовал не код сперва писать, а порассуждать о том как собираетесь решать задачу. Придумайте алгоритм сначала на русском языке в свободной форме. У вас нет никакого опыта, поэтому язык программирования вас слишком сильно отвлекает от сути задачи.

    Есть такая классическая задача "упаковка рюкзака". Там даны неделимые предметы и их массы. У рюкзака есть максимально допустимая масса. Все предметы в рюкзак не влезут, но нужно нужно пдобрать такой набор, чтобы нагрузить рбюкзак максимально. Эта задача вычислительно сложная при большом числе предметов. Она решается полным перебором.

    Ваша же задача гораздо проще. Вам нужно положить в такой рюкзак как можно больше предметов из имеющихся, чтобы не превысить максмальную массу (в вашем слуае объём бэкап-диска).
    Вот у вас есть большой набор разных гирек, и нужно максимальное число гирек разместить на чаше весов, чтобы не превысить какой-то вес. Как вы будете выбирать гирьки?

    Вот такая вот вам подсказка. Думайте, решайте, задавайте конкретные вопросы и вам дадут еще подсказок. Но готового решения вам здесь, надеюсь, не дадут. Нам нужна достойная смена, а не двоичники, за которых дяди задачки решают.

    Давайте я вам ещё рефакторинг вашего кода сделаю. Это не сделает его правильным, но он станет лучше.
    with open("zadanie26_var_1.txt") as f:  # Так открытый файл будет закрыт после считывания
        # Так вы считаете первые два числа в отдельные переменные:
        total_volume, users_count = map(int, f.readline().strip().split())
        # А так считаете остальные строки в список и нечаянные пустые строки вас не смутят:
        user_sizes = [int(line.strip()) for line in f if line]  
    
    # Хорошо бы вынести логику решения в отдельную функцию:
    def solve(s, n, lst):
        # Вот так можно сделать проверки корректности (ну чисто для себя) входных данных:
        assert s <= 10000, 'Invalid total volume'
        assert len(lst) == n, 'Users count is not valid.'
        assert n <= 2000, 'Wrong users count.'
        assert all(0 < x <= 100 for x in lst), 'Invalid user size.'
    
        # Вот здесь вот вы сделаете нужные вычисления ;)
        backup_users_count = ...
        max_backup_file_size = ...
    
        return backup_users_count, max_backup_file_size
    
    # Ну а вызвать функцию и напечатать ее результат вы тоже сумеете, правда?
    Ответ написан
    4 комментария
  • Как обезопасносить себя на работе при использовании WiFi?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Защититься так, чтобы быть уверенным, что не смогут прочитать - точно нет!
    Даже при том, что телефон шифрует "трафик" - "утечка" данных во внутреннюю сеть, всё же, возможна.

    Необходимо использовать менее заинтересованный канал в ваших данных: мобильный интернет или иной Wi-Fi, не подключенный никак к рабочей сети.
    Ответ написан
    2 комментария
  • Как обезопасносить себя на работе при использовании WiFi?

    @antonwx
    В большинстве случаев достаточно убедиться в использовании протокола https. Для успокоения души можно дополнительно пользоваться vpn, например от Cloudflare
    Ответ написан
    Комментировать
  • Делать 1 большую таблицу или разбивать на части?

    Maksclub
    @Maksclub
    maksfedorov.ru
    Чтобы не громоздить тонны колонок и делать по канонам 3 нормальной формы — разделяют сущности, атрибуты и их значения отдельно.

    Свойства обычно хранят отдельно( у них могут быть свои поля)
    5a68a3b0baf0c785050166.png
    а значения к ним тоже отдельно (EAV)
    product_id, feature_id, value (где featured_id — id свойства из таблички выше)

    пример с моего интернет-магазина — 1 товар, много характеристик
    5a68a6c2b19f2067082314.png

    Пример запроса:
    SELECT   p.id, p.url, p.name
    FROM e_products p		
    WHERE 1 
    AND p.id in (SELECT product_id FROM e_options WHERE feature_id=8 AND value in('Бежевый','Белый') )
    AND p.id in (SELECT product_id FROM e_options WHERE feature_id=1 AND value in('Лето 2011') )
    время выполнения запроса — 0.019 s для 10 тыс товаров, 100тыс значений свойств и десятка свойств

    В запросе два параметра фильтра (1 значение коллекции и 2 значений цвета, выше можете увидеть в табличке)
    как понимаете — строку с нужным свойством подставляете в зависимости от GET запроса...

    * Можно упростить — вместо feature_id хранить сразу название параметра, но лучше сразу разделите... чтобы можно было параметру поставить напрмиер поле включать или нет его в фильтр и задать порядок, или нужно будет выводить поля в саму форму фильтра (гонять большую таблицу — так себе решение)
    Ответ написан
    3 комментария
  • Сможет ли Django полностью заменить PHP?

    Tomio
    @Tomio
    backend developer (python, php)
    Django никогда не заменит PHP или какой-либо из его фреймворков или CMS, потому что это лишь инструмент, с помощью которого достигаются поставленные задачи. Это всё равно, что написать, заменит ли Symfony или Bitrix когда-нибудь Python, а то куда не посмотри, на серьезные проекты нужен симфони, а в сфере e-commerce подавляющее большинство сайтов сейчас ни битриксе.
    Всё взаимозаменяемо. Вы, как разработчик, должны понимать, какой инструмент сможет решить вашу задачу лучше и быстрее, и в каком инструменте вы лучше разбираетесь. Не тянитесь за трендами, прокачивайте навыки в том, что вам интересно, и где вы чувствуете себя как рыба в воде.
    Ответ написан
    Комментировать
  • Получить письмо без цитирования?

    glaphire
    @glaphire Куратор тега PHP
    PHP developer
    Попробуйте этот пакет email-reply-parser. Так хорошо бы понять, какая там структура текста с цитатами, может его можно более простым парсером обработать в два-три этапа
    Ответ написан
    Комментировать
  • Как загружать html5 медиа отложенно?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Ответ написан
    Комментировать
  • Роботы (боты) просматривают контент на сайте?

    nokimaro
    @nokimaro
    Меня невозможно остановить, если я смогу начать.
    - 1 запрос раз в 5 секунд, это не является "невероятно частыми" запросами. Невероятно частые это когда приходит GoogleBot или YandexBot и сканирует сайт со скорость 5-10 запросов в секунду.
    - боты как правило не поддерживают cookies и соотв-но каждое открытие страницы для них стартует новая сессия
    - я бы на вашем месте логировал так же user agent который бы подсказал что по этому ip - user agent
    Mozilla/5.0 (compatible; Adsbot/3.1)

    - как правило легитимные боты и сканеры не пытаются маскироваться под реальных людей и их можно определять по user agent и не стартовать им сессию, а так же не учитывать просмотры. Можно использовать готовую библиотеку для детекта ботов и краулеров, например https://github.com/JayBizzle/Crawler-Detect
    Ответ написан
    2 комментария
  • Почему MySQL индекс UNIQUE не учитывает регистр?

    idShura
    @idShura
    Попробуй сделать collation utf8_bin для колонки user_nickname

    ALTER TABLE `tablename` MODIFY
    `user_nickname` VARCHAR(100) 
    CHARACTER SET utf8
    COLLATE utf8_bin
    Ответ написан
    2 комментария
  • Почему выводится только первый подходящий элемент массива?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    в return
    Ответ написан
    Комментировать
  • Почему Linux предпочтительнее для администрирования и чем? Почему многие предпочитают её?

    dyuriev
    @dyuriev
    A posteriori
    Скорее всего под таким вопросом начнется всем уже известный срач. А пару человек еще упрекнут вас в том, что у них 30-50-70 процентов серверов под FreeBSD

    Мое скромное мнение
    • Бесплатность
      Да, сейчас кто-нибудь заявит о том что на Red Hat не дешевле, а иногда и дороже Windows, но большинство дистрибьютивов Linux бесплатны
    • Открытость
      Данный факт не ценишь ровно до того момента, как приходится сделать что-то, что не разжевано в интернете. Рано или поздно разработчик доходит до того момента, когда ползет в исходники с глубоким душевным вопросом "как это %&$ должно работать?". Ибо некоторые моменты либо документированы неправильно, либо не полностью, либо в коде досадная ошибка, которую никто не замечал ранее, ну или замечал, но багрепорт/коммит с фиксом разрабу не кидал.
      В Windows-среде, особенно если это сама система, а не прикладной софт, данный баг может вылиться в недели или месяцы страданий. Там только реверс-инжиринг, если саппорт вас игнорит.
    • Документированость
      Команда не сработала как ожидалось? man commandname
      Не помогло? Гляньте сайт разработчика, там обычно на столько обширное вики/документация, что увлечетесь чтением.
      Программа свежая и документация пока не исчерпывающая? Гляньте репозиторий, поиском найдите по исходнику место которое хотите вызвать параметрически - скорее всего там увидите комментарий разраба, кто писал этот код, заодно еще парочку недокументированных возможностей почерпнете.
      В конце концов, если вдруг вам станет интересно, почему сделано так, а не иначе - гляньте багзиллу проекта - скорее всего поиском найдете обсуждение данного куска кода.
    • Гибкость
      Воткнуть свой драйвер в прямо в ядро? Легко (если уж научитесь драйвера писать, то внедрить в ядро особых проблем не составит)
    • Повсеместность
      Че уж там сервера. Роутеры, телефоны, embedded-решения - там везде в кулуарах за редким исключением крутится ядро Linux и знакомые пакеты и команды. Этакая стандартизация.
    • Эффект IKEA
      Вы сами того не подозреваете, но когда по кирпичикам соберете этот чертов конструктор, заставите каждый винтик крутиться (с вероятностью стремящейся к 100%) так как вам надо, вы полюбите эту систему.

    И еще раз напоминаю, что это мое скромное личное мнение.

    Несомнено, сервера и на Windows бывают быстрые, стабильные, работающие 24/7/365 годами. Но так уж повелось.
    Ответ написан
    2 комментария