Задать вопрос
  • Где хранить данные об уровне доступа пользователя, в Сессии или в Базе данных?

    max-kuznetsov
    @max-kuznetsov
    Главный IT-архитектор
    Как правило, информацию о доступе пользователя проверяют каждый раз при поступлении от него нового запроса. Делается это из-за того, что с момента предыдущего запроса пользователя могли блокировать, или изменить его права. Если хранить информацию об уровне доступа в сессии, то до её истечения заблокированный пользователь будет продолжать пользоваться всеми разрешениями, которые у него были на момент начала сессии. А при умелом пользовании запросами сессия может жить очень долго )))
    Ответ написан
    1 комментарий
  • Хранить в БД или PHP?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Разумеется, только в БД.

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

    Или, если сформулировать короче, то данные должны лежать в базе, а в РНР файлах - только код.
    Ответ написан
    5 комментариев
  • Где найти интересные решения макетов для интерфейса сайта?

    romansergeevich
    @romansergeevich
    interfaces.pro - живые
    froala.com/design-blocks - шаблоны
    Ответ написан
    Комментировать
  • Как вам такой MySQL запрос?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    В MySQL 5.7.5 и выше работать не будет. По стандарту при группировке допускается только выборка полей, входящих в GROUP BY или агрегатных функций от прочих полей.
    Ответ написан
    5 комментариев
  • Как убрать отступ в теге code?

    prrrrrrr
    @prrrrrrr
    Верстаю сразу на PHP.
    убрать enter между code и var тыц
    Ответ написан
    Комментировать
  • Что за тупизна с этим редактором?

    webinar
    @webinar
    Учим yii: https://youtu.be/-WRMlGHLgRg
    Я давно знал что dreamveaver лучше вообще обходить стороной. Но так и не успел перейти на phpstorm.

    Если Вы юзаете dreamveaver, то вероятно Вам нужен не phpStorm, а webStorm.

    Или может проблема в коде?

    Наверняка. Судя по ошибке, которая не может найти закрывающую фигурную скобку. И если бы Вы выкладывали код как код, то думаю даже нашли бы ее. Или мы бы подсказали. Но код картинка - это не уважение к коллегам.
    Я уверен, что в аду есть даже специальное место для тех кто так код вставляет. Рядом с теми, кто не включает поворотники.
    Ответ написан
  • Хочу начать изучать Laravel, ответите на несколько вопросов?

    pOmelchenko
    @pOmelchenko
    php-developer
    Ох! Чтобы изучить laravel вам нужно изучить php (сюда же базы можно приплести) и, как я понял из контекста вопроса, js. Отвязывайтесь от изучения фрэймворков, а то к финалу изучения laravel+vuejs выяснится что они уже депрекейтед и будете опять наблюдать картину типа "Я просмотрел вакансии на разных сайтах, чтобы понимать, какой стэк технологий нужен работодателям, и в требованиях я вообще не нашёл, что им нужен jQuery"

    1 – удобно
    2 – наверное придется, но если вы хорошо знаете js то процесс миграции во vuejs будет безболезненным
    3 – ни плохим и не хорошим. Вы должны прочувствовать все фичи которые дает laravel из коробки, а их набор настолько не большой (в базе), что будет достаточно сделать каки-то наброски абстрактного приложения
    Ответ написан
    Комментировать
  • Хочу начать изучать Laravel, ответите на несколько вопросов?

    webinar
    @webinar Куратор тега Веб-разработка
    Учим yii: https://youtu.be/-WRMlGHLgRg
    1) хз
    2) А тут по подробнее:
    - vue - это маст хев на ближайшие годы не зависимо от laravel.
    - vue не исключает использования jquery, хотя я уверен, что любой плагин можно найти и на чистом js.
    - судя по тому, что Вы пишите, Вы явно не видели варианты со сборкой vue из компонентов. Там в html лишнее не попадает, не больше, чем с jquery
    3) Если от легкого к сложному, то явно не интернет магазин. Вначале блог или новостной сайт, потом каталог "чевачупчичей", а потом уже сами поймете куда двигаться.

    ПС. Я не верен. Что изучение laravel и vue стоит совмещать. Наверное кашка может получиться. Лучше вначале освоить vue + сборщики, хотя бы азы, до состояния "дочитал до конца документацию, но хрен что запомнил", а потом вникать уже в laravel.
    Ответ написан
    6 комментариев
  • Хочу начать изучать Laravel, ответите на несколько вопросов?

    Wolfnsex
    @Wolfnsex Куратор тега Веб-разработка
    Если не хочешь быть первым - не вставай в очередь!
    1) На сколько удобны Homstead + Vagrant, которые они рекомендуют использовать? Посмотрел информацию по его установке, использовании. Разве это удобнее всем привычного openServer?

    Насколько удобен конкретно именно этот стек, и насколько он удобен будет лично для Вас - сказать затрудняюсь, но в общей сложности, использование "родной" среды при разработке приложения - практика весьма правильная. Думаю что в данный момент, большинство моих эпитетов на тему "почему оно так и зачем" Вам будут не очень интересны, но, есть простой пример из реальной жизни: в *nix, чаще всего, файловые системы чувствительны к регистру имён файлов, в Windows [NTFS] (и OpenServer в частности) - такой чувствительности нет, что влечёт за собой потенциальные ошибки в самый неподходящий момент (когда Вы будете выгружать сайт на хостинг) и исправить их "по быстрому" удаётся не всегда, по этому, я бы рекомендовал использовать "родной" Linux при разработке. Какой стек взять - сакрального значения не имеет, мы используем: Docker (Hyper-V), VirtualBox + настроенную самостоятельно вирт. машину и различные другие варианты (среди которых, OpenServer проскакивает крайне редко).

    2) Прямо из коробки Laravel поддерживает Vuejs, но посмотрев их курсы на Laracasts и ещё пару примеров компонентов для него, мне показалось, что он не совсем подходит для того, чтобы делать на нём те же слайдеры, системы частиц и подобные вещи.
    VueJS - это JS фреймворк, волей судьбы "встроенный" в Laravel. Как мы знаем, JS относится к области вёрстки, что в целом с фреймворком серверным связано крайне слабо. Какие элементы в вёрстке использовать лично Вам - дело - лично Ваше. Из собственного опыта могу сказать, что мы в своей работе не гнушаемся ни VueJS, ни jQuery, ни различными готовыми слайдерами и вообщем всем, что может быть уместно в рамках конкретных требований конкретного проекта. По сему - я думаю Вам не стоит забивать себе этим голову. Насколько и чем хорош VueJS - можно узнать из массы уроков по оному.

    Вообще не понравилось, что в HTML-разметке вставляются ивент-слушатели, как в стандартном JS прям (@click, onclick). Мне это напомнило встраивание CSS прямо в тэги. Мне нравится в jQuery то, что все ивенты вешаются прямиком в скрипте, не заглядывая в HTML-разметку.
    На вкус и цвет все фломастеры разные. Какой подход "лучше" - покажет только время. В данный момент, мы используем оба из них и особо не паримся по этому поводу.

    Я просмотрел вакансии на разных сайтах, чтобы понимать, какой стэк технологий нужен работодателям, и в требованиях я вообще не нашёл, что им нужен jQuery, только Vuejs. Отсюда и вопрос, то есть мне нужно переписать свои слайдеры, системы частиц под Vuejs? Часто встречал сообщения о том, что переплетать эти две технологии плохая затея. Либо то, либо то. Посмотрел предложенные готовые слайдеры, вообще не впечатляют.
    Работодателю нужны сотрудники способные принимать решения и выдавать конечный продукт. Остальное особого значения не имеет. Если Вы сможете выдавать продукт нужного качества в рамках поставленных сроков, а потом поддерживать этот продукт в надлежащем состоянии - поверьте мне, работодателю будет совершенно всё равно, на как и на каком языке Вы это делаете, хоть на С++ бекенд пишите.

    3) Хорошим ли является планом, чтобы сделать воображаемый интернет-магазин для обучения и освоения Laravel? Или как лучше изучать эту технологию от легкого к сложному? Всегда была проблема с тем, чтобы структурировано изучать ту или иную область разработки. Чтобы не тупо копировать, а понимать, как всё устроено и как работает.
    Что бы понимать что-то структурно - нужно понимать истоки. В области веб-разработки таковыми "истоками" могут являться например, протокол HTTP, фундаментом которого будет протокол TCP/IP, в основе которого лежат другие технологи... чем лучше Вы будете понимать как всё работает изначально, и в результате чего появилась, например, такая парадигма как MVC, как работает composer так далее, далее, далее... когда Вы будете всё это понимать - в голове будет складываться целостная картина происходящего, а не обрывки каких-то знаний. Разработка интернет-магазина в этом процессе, глобально, погоды не сделает, но какой-то опыт безусловно даст, главное, перед тем как будете разрабатывать собственный магазин - найдите какой-то уже готовый и постарайтесь в точности повторить его функционал, начиная от восстановления пароля заканчивая тем, как в корзине пересчитывается цена при изменении количества товара.
    Ответ написан
    Комментировать
  • Почему многие компании пишут web-приложения на Java, а не на Node или php?

    hOtRush
    @hOtRush
    Вопрос из серии "у нас были задачи и мы их решали". Например на джаве можно писать десктопные кроссплатформенные приложения, на пхп и node это большое извращение.
    Ответ написан
    8 комментариев
  • Что такое enterprise приложения?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Enterprise - значит корпоративное, приложение используемое крупными компаниями для зарабатывания денег. У таких приложений есть три основных качества:
    1. Большая и сложная кодовая база;
    2. Высокие требования по надёжности и производительности;
    3. Длительный срок эксплуатации.

    Поэтому разрабатываться они должны на языках со строгой статической типизацией. Приложение на динамическом PHP в несколько миллионов строк кода, у которого на протяжении десяти лет сменится сотня разработчиков, будет иметь в себе такое количество трудноуловимых багов, что его поддержка будет обходиться дороже, чем будет приносить его эксплуатация.
    Ответ написан
    3 комментария
  • Почему многие компании пишут web-приложения на Java, а не на Node или php?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Процитирую сам себя:
    У enterprise-приложений есть три основных качества:
    1. Большая и сложная кодовая база;
    2. Высокие требования по надёжности и производительности;
    3. Длительный срок эксплуатации.

    Поэтому разрабатываться они должны на языках со строгой статической типизацией. Приложение на динамическом PHP в несколько миллионов строк кода, у которого на протяжении десяти лет сменится сотня разработчиков, будет иметь в себе такое количество трудноуловимых багов, что его поддержка будет обходиться дороже, чем будет приносить его эксплуатация.

    И добавлю, что Java изначально создавалась как язык максимально сопротивляющийся сознательному или бессознательному стремлению программиста выстрелить себе в ногу. Кроме того, она очень хорошо соответствует принципу наименьшего удивления.
    Ответ написан
    6 комментариев
  • Создание интернет-магазина?

    Sanes
    @Sanes
    Начинайте учить шаблонизаторы для CMS.
    Самый простой Modx+Minishop2. Или Opencart, Wordtress и т.п.
    Ответ написан
    Комментировать
  • Как защитить открытый PHP код?

    RayMefise
    @RayMefise
    Java, PHP, C, C++, C#, .NET, QT
    Сам код ты никак не защитишь. В лучшем случае тебе помогут копирайты и лицензирование кода. Если тебя интересует защита от использования без лицензии, то есть один способ который я применял в своем проекте. Этот способ защищает не на 100% но может доставить гемороя тем кто решит использовать ваш продукт бесплатно. Оговорюсь так же что способ этот не всем может подойти.

    Теперь собственно сам способ. Часть кода PHP без которого не будет работать ваш проект переносим на CGI написанный например на СИ++.
    В CGI встраиваем проверку лицензии привязанную во первых к маку и IP сервера на котором будет работать проданный ресурс. Вторую часть проверки переносим на ваш сервер с лицензиями. То есть продукт при работе должен периодически (или при определенных операциях) проверять установленную лицензию которая вшита в CGI. При проверке ваш программный продукт обращается к серверу и отправляет ему шифрованную информацию о лицензии. По этой информации на вашем сервере определяются данные о сервере и так же шифрованно отправляются назад программному продукту. Тот сверяет эти данные с данными о сервере и если данные верны генерирует временный токен, который сохраняет в укромном месте вашего программного продукта и отправляет на ваш сервер с лицензиями. Для защиты от подмены данный о сервере, после успешной проверки отправляйте запрос на ip сервера вызывая определенную функцию CGI которая должна сопоставить токены. если совпадают, то лицензию проверял действительно программный продукт с сервера на который он зарегистрирован. При этом система должна автоматически обновляться с вашего сервера до последней версии и во время обновлений вам необходимо изменять методы шифрования. Так как CGI закрыт и внутри него содержатся важный для работы функционал, то удалить его или взломать будет проблематично. Возможно система запутанная и не лишена недостатков, но в работе показала себя неплохо.

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

    Надеюсь смог вам помочь.
    Ответ написан
    3 комментария
  • Как сверстать шапку такой формы?

    Ankhena
    @Ankhena Куратор тега CSS
    Нежно люблю верстку
    Без SVG, картинок и псевдоэлементов,
    CSS only

    Ответ написан
    24 комментария
  • Как сделать задержку на апдейт?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    то, что вы ищите - usleep

    В остальном ваш код доводит до слез этого кота

    1444912419198668378.jpg
    Ответ написан
    1 комментарий
  • Как заменить строки в массиве?

    0xD34F
    @0xD34F Куратор тега JavaScript
    words.replace(index, 1, word.charAt(0));

    Метода replace у массивов нет. Есть splice.

    как реализовали бы данную задачу вы?

    // собираем новый массив
    const newWords = words.map(n => n[0] || '');
    
    // обновляем существующий
    words.forEach(([ n = '' ], i, a) => a[i] = n);
    Ответ написан
    Комментировать
  • Вопрос о новых веяниях и требованиях во фронтенде?

    1. Если курс рассчитан на нулевой уровень, то вам и не будут давать фреймворки.
    2. На фреймворках никто не помешан, на нем просто быстрее можно решать задачи, а скорость для бизнеса - все.
    3. Требования к кандидату зависят от компании, в которую вы хотите пробиться. В шарашкиных конторах от вас нужно будет не только в фулстек, но и уметь варить кофе, печь блины и жонглировать шарами перед начальником. В нормальных компаниях есть четкая градация, однако, разбираться в том, чем занимаются ваши коллеги по цеху - полезно, без этого не стать хорошим специалистом.
    4. Планировать идти на курсы не нужно, нужно идти прямо сейчас, и сразу принять тот факт, что за 2 недели вы не станете "мастером фронтенда" и не сможете получать 100k+ в месяц.
    Ответ написан
    Комментировать
  • Какие требования к frontend-junior?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    Сходите на собеседования по вакансиям.
    То, что в них указано не всегда совпадает с действительностью.
    Без личного похода по 5-10 собеседованиям вам вряд ли ответы на тостере помогут.
    Ответ написан
  • Какие требования к frontend-junior?

    @djay
    Почему от новичков требуют много и неадекватно?

    Потому что этих новичков, таких как ты - их как грибов после дождя. Они есть каждый день по 50 штук, которые жаждут получить хотя бы какую-нибудь работу.

    Вот - представь, допустим есть красивая девочка, свободная. Представляешь сколько парней к ней будут подкатывать всячески? И что потом? У неё повышается самооценка быстро и не заметно. Теперь требования к парням выше - чтобы теперь, как-минимум - чтобы была тачка и доход от 100К в месяц.

    Точно так же и на ИТ-рынке сейчас. Ты в роли одного из этих парней, а работодатель в роли этой красивой барышни.

    Во-вторых, что значит нативно и на обе платформы? Нативно и на обе платформы - это подразумевает знание SWIFT и Java (со всеми их фреймворками и ежедневными библиотеками).

    В-третиих, какое еще администрирование?
    С точки зрения работодателя, это же просто не этично и опасно подростку давать root-доступ от сервера.

    А теперь по делу:

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

    Ты должен знать:

    - Чистый JS (как и старый так и новый ECMA2016)
    - Jquery, Bootstrap
    - На базовом уровне фреймворки (Angular 5+, React)

    Не обязан знать в совершенстве. Должен знать на таком уровне что - вот это не знаю как сделать, сейчас поищу в интернете и попробую у себя реализовать.

    И крайне желательно иметь репозиторий на GitHub со своими пусть даже мелкими наработками.
    Остальное - чем больше, тем лучше.
    Ответ написан
    28 комментариев