Задать вопрос
  • Как находить сумму многомерного массива с разной вложенностью?

    arr.flat(Infinity).reduce((acc, n) => acc + n, 0);
    Ответ написан
    Комментировать
  • Как запретить ввод дублей?

    2chevskii
    @2chevskii
    Если бы каждый мог в поиск, тостер бы вымер.
    Проверить, находится ли уже новое значение в cities, сравнить первую букву нового значения и последнюю букву последнего значения в cities.
    Ответ написан
    9 комментариев
  • Как верстать данный макет?

    approximate_solution
    @approximate_solution
    JS Developer. Angular\React\Vue\Ember
    Подскажите пожалуйста как сверстать данную страницу , а именно розовый фон со всеми скруглениями и всем прочим.

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

    Подскажите еще как лучше/легче верстать данный макет на флексах или на бутстрапе?

    Бутстрап это и есть флексы, только со своими компонентами, миксинами, снипеттами, для убыстрения разработки путем привязки дизайна к 12 колоночной системе.
    Поэтому если Вы явно видите, что дизайн сделан под бустрап - дерзайте.
    PS: Я в учусь верстать всего 1,5 года, и много не знаю, объясните пожалуйста как можно проще.

    Обычно за 1,5 года люди набивают руку и верстают условно сложные интернет магазины. Здесь же у вас
    logo, nav, background-image, position: relavite, position: absolute, border, border-radius, button, p и еще с 10-ток тэгов и селекторов которые встречаются Вам на 2й недели изучения верстки
    и довольно примитивная сетка. Очень плохо учитесь, раз такой легкий макет спустя 1,5 года вызывает у Вас ступор.

    5eb518df782ce139359835.png

    Блок с обводкой делаете border с нужным цветом и значением position: relavite, с помощью position: absolute привязываете img к разным точкам border, перекрываете border через z-index
    То что я Вам посоветовал - не истина в первой инстанции, это первичный взгляд на макет(учитывая то, что я не верстальщик), поэтому в случае появление артефактов, верстку можно и нужно дополнить.
    Ответ написан
    Комментировать
  • Как работать с websocket в php без библиотек?

    @xfg
    Прочитать соответствующий RFC https://tools.ietf.org/html/rfc6455 чтобы понять, как происходит рукопожатие и какие байты в переданном сообщении за что отвечают. После этого будет понятно как написать реализацию. Я досконально уже не помню, но фактически от клиента приходит обычный http запрос с определенными заголовками, сервер разбирает этот запрос и если всё ок, то сохраняет открытое соединение в массив, если нет, то отправляет соответствующий ответ и закрывает соединение. Дальше по открытому соединению начинает сыпаться поток байтов от клиента их нужно разбирать, чтобы понять длину сообщения, сами данные переданные в фрейме, закончился фрейм или еще нет и тому подобное. Обратно также кодировать данные в поток байтов и отправлять по открытому соединению. Каждый байт в переданном фрейме несет определенный смысл. Обо всем этом подробно написано в RFC, но на английском. Вообще это хорошо примерно понимать как работает, но глупо писать такую низкоуровневую реализацию, когда есть готовые. Такие вещи развивают и поддерживают годами. Вы же не пишите HTTP серверы, а берете готовые вроде nginx и тому подобное.

    В каком месте можно полученные данные подготовить к записи в бд.

    Как сделать, что бы на стороне клиента, один websocket отвечал за сообщения, другой за статьи. (Или за эти два действия отвечает один websocket, тогда как мне на сервере это различать).

    Вебсокет это низкоуровневая штука, для передачи потока байтов от клиента на сервер, в отличии например от HTTP, где есть заголовки и тело сообщения. Поверх вебсокета нужно делать еще один протокол или самописный или выбрать один из готовых. Это проще говоря, то как выглядят ваши фреймы (сообщения), которые вы отправляете с клиента на сервер и назад. Например клиент может отправлять такой фрейм:
    ["id", "controller/action", {param1: value1, param2: value2}]

    в ответ получать
    ["id", "OK"]
    если запрос был обработан успешно или
    ["id", "ERR", {error: "action not found"}]
    если произошла ошибка. По переданному id в массиве, можно понимать, к какому запросу относится ответ.
    Для уведомлений (событий) сервер может отправлять клиентам что-то такое
    ["user_added", {user: {...}}]
    и т.д. Этот протокол необходимо придумать самому или выбрать из готовых (популярных пока нет) и написать его реализацию (клиентскую и серверную часть) или опять же взять уже готовую.

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

    Но это уже всё должно быть, просто возьми real-time фреймворк. Там за тебя написали и websocket сервер и протокол поверх него и экшены уже есть. Всё низкоуровневое уже готово. Бери и пиши приложение. В nodejs самый популярный это например https://github.com/socketio/socket.io, а в php я не знаю, но уверен, что тоже есть что-то популярное.

    Своё написать не получится, без опыта и без попыток сделать приложение на чем-то готовом. Нужно как минимум прочитать RFC и посмотреть реализации других разработчиков. Для этого нужно быть кем-то больше, чем "программистом сайтов".
    Ответ написан
    1 комментарий
  • Как сделать текст полукругом?

    Morpheus_God
    @Morpheus_God
    Каждую букву в свой блок и при помощи transform разворачивать.
    Пример
    Ответ написан
  • Раскрытие и закрытие блока и записывание в cookies?

    ArsenyMatytsyn
    @ArsenyMatytsyn Куратор тега JavaScript
    Руководитель frontend направления, предприниматель
    https://developer.mozilla.org/ru/docs/Web/API/Docu...
    https://developer.mozilla.org/ru/docs/Web/API/Wind...
    https://developer.mozilla.org/en-US/docs/Web/API/W...

    Выбирай любое хранилище, пиши в него буль (true\false) при клике и проверяй при каждом запуске кода (на других страницах).
    Ответ написан
    Комментировать
  • Как правильно сделать пагинацию?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Из приведенного кода не понятно как происходит
    если я, например, нахожусь на проекте с id=5 (а id=6 еще нет) и при этом я нажимаю на кнопку "Вперед", то меня переносит на страницу с id=6, которой не существует и я просто получаю ошибку.


    Общая идея пагинации: смотрите какие у вас есть данные в базе, исходя из этого формируете ссылки на возможные страницы.
    Если вы хотите сделать цикличную - ну так и сделайте её, добавьте в свою логику проверку "id больше чем текущий не найдено" и корректно обрабатывайте.
    Ответ написан
    Комментировать
  • Как создать форму подобного типа?

    @imandrey
    картинку через before с абсолютным позиционированием
    Ответ написан
    5 комментариев
  • Как в RegExp найти специальные клавиши?

    hzzzzl
    @hzzzzl
    https://developer.mozilla.org/ru/docs/Web/API/Keyb...

    у события будут свойства типа event.ctrlKey true/false, не надо парсить саму клавишу

    $(document).on("keydown", (e) => {
      console.log('holding shift:', e.shiftKey)
    });
    Ответ написан
    Комментировать
  • Как называется и как применять эту штуку /\ в js?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    1 комментарий
  • Как скачать html сайт?

    duboloms
    @duboloms
    Люблю есть дубы с кетчупом. Веб-разработчик.
    Нажимаешь Ctrl + S и выбираешь куда тебе браузер должен скачать
    Либо,
    Нажимаешь правую кнопку мыши > Сохранить страницу как (нажимаешь и выбираешь)
    Ответ написан
    1 комментарий
  • Почему при выводе суммы чз for отрицательное число стало положительным?

    glaphire
    @glaphire Куратор тега PHP
    PHP developer
    Вы в for суммируете индекс $i, а не элементы массива $arr[$i] :)
    <?php
    $arr = [1,3,5,6,7,8,9,1,2,-3];
    
    $summa=0;
    for ($i=0;$i<10;$i++){
      $summa+=$arr[$i];
    
    }
    echo 'summa tchisel massiva = '.$summa;
    Ответ написан
    Комментировать
  • Стоит ли идти в веб-разработку?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Web-разработка - это не только сайты для малого и среднего бизнеса. И HTML+CSS+JS - это лишь малая часть web-разработки. Самый главный минус в том, что на входе огромная конкуренция. Но если прорваться через это барьер, то тут не хуже, чем в любых других направлениях ИТ.
    Ответ написан
    9 комментариев
  • Как подключить скрипт к консоли?

    NeiroNx
    @NeiroNx
    Программист
    Значит функции вне зоны видимости консоли.
    Ответ написан
    Комментировать
  • Как стилизовать полосу прокрутки в CSS?

    AntonLitvinenko
    @AntonLitvinenko
    HTML coder
    Можно, но поддерживает только браузеры на базе webkit, оптимально использовать плагин
    Ответ написан
    Комментировать
  • Не могу сделать карточку товара. Что не так?

    @Lord_Dantes
    Отделите карточку на 2 блока флексами.
    Левый блок - картинка
    Правый блок - заглавие и тд

    UP https://codepen.io/lord-dantes/pen/JjYObGK?editors=1100
    Ответ написан
    1 комментарий
  • Как по отдельности получить значения из строк?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Ответ написан
    Комментировать
  • Как привязать 1С, магазин и склад к сайту, для отображения актуальных остатков продукции?

    @d-stream
    Готовые решения - не подаю, но...
    Ну можно написать простенький web-сервис который будет по каждому обращению дергать из 1С-базы остатки с ценами и на сайте зацепиться за этот web-сервис... почти сразу возникнет проблема тормозов... придется подумать над кэшированием...
    Можно написать обработку, которая будет с определенной регулярностью выгружать актуальные остатки с ценами куда-то откуда сайт будет отображать это.
    Можно еще сильнее упростить задачу в виде "и так сойдёт" и тупо выгружать остатки, архивировать это и архив выкладывать на сервере... а на самом сайте "скачать прайс" )))
    Ну а еще можно выгружать остатки, базовые цены и на сайте с учетом конкретного посетителя сайта - формировать его персональную цену с учетом скидок. И даже остатки - в зависимости от группы посетителя.

    Ну и да. Самый козырный вариант - "чтобы получить прайслист - пришлите нам письмо на бланке и приложите карточку организации"))))))
    Ответ написан
    Комментировать
  • Как выучить React?

    approximate_solution
    @approximate_solution
    JS Developer. Angular\React\Vue\Ember
    Выучил JavaScript и JQuery

    Это слишком голословное утверждение.
    Но если это вдруг так, то: по нормальному - перед тем как лезть в Реакт, Вы должны знать -
    функции, обычные и стрелочные - чем отличаются, где используются, callback, массивы(методы работы с массивами), объекты(методы работы с объектами), спред оператор, деструктуризация.

    Далее - что бы перейти на React - вы должны начать понимать:
    Зачем нужны библиотеки и фреймворки, чем они помогают при разработки приложения, какие проблемы решают.
    - что такое компонент(какие проблемы решает),
    - почему именно компонентный подход самый лучший при разработке интерфейса(какие проблемы решает),
    Что такое JSX, в чем его плюсы и минусы в реакте, (какие проблемы решает)
    В чем различие между функциональной и классовой компонентой(какие проблемы решает и создает каждая из них)
    Что такое props, state, dispatch, action, передача данных через props, как работает redux(желательно знать, что под капотом).
    Что такое reducer и observer,
    для чего нужен контейнерный компонент над компонентом презентационным и тд и тп.
    Всё что я Вам описал(30% от всего) - это уровень джуна - берется из документации, и при первом опыте разработки своего пет проекта. Благо книг, документации хватает.

    Если Вы плаваете в таких моментах как - не знаете объекты и массивы, зачем применяется map, и как сделать простой компонент на ванильном JS - не лезьте в Реакт, пока еще рано.
    Ответ написан
    Комментировать