• Как сделать переход по страницам сайта без презагрузки?

    @NinjaNickName
    Web разработчик
    History.pushState()

    var state = { 'page_id': 1, 'user_id': 5 };
    var title = 'Hello World';
    var url = 'hello-world.html';
    
    history.pushState(state, title, url);
    Ответ написан
  • Какой доп. монитор для macbook air выбрать для работы с графикой?

    @NinjaNickName Автор вопроса
    Web разработчик
    Как и обещал, публикую отзыв по монитору Iiyama ProLite XUB2395WSU-B1 22.5".
    Выбрал я его из-за 10 битной матрицы ( 8 + frc) и соотношения сторон 16:10
    + исходя из рекомендаций, что для мака предпочтителен монитор 21.5" FullHD, чем 24" FullHD.

    Покупал как второй монитор для Apple Macbook Air, не для себя, а в подарок.
    Сразу скажу, что я предпочитаю заказывать в известных\надежных магазинах, чтобы не нарваться на контрафактную\серую продукцию, название магазина светить не буду наверное, чтобы не посчитали за рекламу.

    Теперь ближе к делу, что могу сказать:
    Есть небольшой засвет внизу слева экрана, но он очень слабый и заметен только на полностью черном экране в темной комнате, объективно - если не искать засветы, его даже невозможно будет обнаружить.
    В наличии кабель Display Port, что хорошо, цветоперадача по сравнению с TN отличная, но не покидает ощущение, что цвета в целом немного тусклые чтоли, вероятно требуется калибровка.
    Битых пикселей не обнаружено, какого-то писка или сторонних шумов тоже нет.

    В качестве картинки есть, вроде как, небольшая разница между моим ASUS VP249HE (6bit+frc), но не принципиальная и не уверен, на счет объективности. Оба монитора тестил подключая по VGA кабелю (мой изначально по VGA был подключен, а у видеокарты нет выхода Display Port). Потом правда я свой ASUS по HDMI подключил и качество изображения улучшилось,но в общем и целом, думаю только профессионал в большинстве случаев, найдет отличия между 6bit+frc и 8bit+frc, но градиенты да, стали плавнее))

    Что еще добавить не знаю, если есть вопросы - спрашивайте. В целом, покупкой доволен, теперь правда нужно озадачиться калибровкой, но за свою цену по моему отличное решение!

    Постараюсь дополнить отзыв после калибровки и сделать фото сравнение с моим текущим ASUS P249HE

    Немного фотографий

    5ec7dc569c97f444193924.jpeg
    5ec7dd23043b3167738082.jpeg
    5ec7dc5f773c0465426644.jpeg
    5ec7dc666dac2287308998.jpeg


    UPDATE
    Еще из плюсов - подставка, надежная и удобная, монитор можно поворачивать в любой плоскости, поворачивать на 90 градусов, отлично регулируется по высоте, в общем, очень удобно.

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

    @NinjaNickName
    Web разработчик
    Как правильно уже заметил Владимир Коротенко, нужно отталкиваться от технического задания и писать на том, что лучше всего знаете.

    Сейчас выбор достаточно большой, есть много готовых решений, условно можно разделить все варианты реализации на следующие:
    • Коробочное решение
    • Облачное решение
    • Решение на фреймворке

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

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

    В вашем случае сложно что-то советовать т.к. не хватает данных по ТЗ, но могу однозначно сказать, что из облачных решений ничего лучше Shopify, на текущий момент нет (по крайнем мере, пока не запустится getOpen.Store), но там вопрос соблюдения 152-ФЗ, если вы планируете работать в РФ.

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

    Весьма не плохими решениями так же являются OpenCart и CS-Cart.
    PrestaShop категорически не рекомендую, внешне выглядит симпатично, но под капотом там не лучше WP, по той же причине не рекомендую и WP (WordPress+WooCommerce), даже в самых смелых фантазиях я не могу понять, как можно выбрать это вариант для реализации интернет-магазина, это не поддается логике и абсолютно за гранью моего понимания.
    Ответ написан
  • Правильная ли архитектура облачного сервиса?

    @NinjaNickName
    Web разработчик
    Все конечно как и всегда зависит непосредственно от проекта, я бы посоветовал почитать про мультитенатную архитектуру, на мой взгляд, это наиболее предпочтительный способ реализации архитектуры SaaS сервиса.

    Ссылки:


    не по существу вопроса, но вдруг вам будет интересно
    Вообще, разработка SaaS сервиса очень трудоемкая задача, если есть желание скооперироваться, мои контакты в профиле, там же ссылка на сайт проекта:) Мы ищем фронтендера на Vue или React, делаем платформу для электронной коммерции, если будет интересно, напишите любым удобным способом расскажу подробнее
    Ответ написан
  • Где MongoDB хранит данные(в Оперативной памяти или постоянном хранилище)?

    @NinjaNickName
    Web разработчик
    Суть вопроса в том будут ли сохранены данные после перезагрузки компьютера

    Будут
    Ответ написан
  • Как защитить php модуль? Чтоб не смогли запустить у себя и украсть даже?

    @NinjaNickName
    Web разработчик
    Можете переписать в виде расширения для PHP:
    (Можно даже на PHP: https://github.com/lisachenko/z-engine/#creating-p... )

    lisachenko/z-engine — NightTiger продолжает демонстрировать все новые возможности PHP благодаря FFI.
    В документации пример создания расширения для PHP на PHP, с помощью которого данные можно сохранять в памяти между запросами.


    Ну или используйте обфускаторы .
    Ответ написан
  • Как сделать API запрос на PHP?

    @NinjaNickName
    Web разработчик
    Вот к примеру как делать POST запросы с помощью CURL
    $data['email'] = 'demo@saures.ru';
    $data['password'] = 'demo';
    
    $ch = curl_init('https://api.saures.ru/login');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
    
    $response= curl_exec($ch);
    curl_close($ch);
    
    var_dump($response);


    cURL, curl_exec, curl_setopt, curl_close, curl_init

    Можно и без cURL:

    $url = 'https://api.saures.ru/login'; 
    $data['email'] = 'demo@saures.ru';
    $data['password'] = 'demo';
    
    $requestParams = http_build_query($data);
    		
    $context = stream_context_create(array(
    	'http' => array(
            'method' => 'POST',
    	'header' => 'Content-Type: application/x-www-form-urlencoded' . PHP_EOL,
            'content' => $requestParams,
    	),
    ));
    		
    $result = file_get_contents($url, false, $context);	
    		
    var_dump($result);


    Если требуется более точный ответ, приведи сообщение ошибки.
    Ответ написан
  • SEO - как продвинуть сайт в топ?

    @NinjaNickName
    Web разработчик
    1. Как изменились поисковые алгоритмы Google, Яндекс за последние годы?

    Очень сильно, в интернете полно информации, поищите почитайте.

    2. Что основное нужно для продвижения сайта в топ Google, Яндекс?

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

    3. Можно ли закупать ИКС, PR без уникального текста на сайте?

    Это где это продают? :)

    4. Сильно ли теряются позиции при плагиате текста?

    Сильно

    5. Как лучше привлекать трафик на сайт: реклама в (Яндекс директ и Google Ads), SEO продвижение в топ, реклама на сходных тематических ресурсах?

    Всему доступными средствами исходя из ваших возможностей:
    • SEO
    • SMM и таргетированная реклама в соц. сетях
    • Контент маркетинг \ инфлюренс маркетинг
    • Контекстная реклама
    • и тд
    Ответ написан
  • Разделить число на части но не более x за раз?

    @NinjaNickName
    Web разработчик
    Как вариант можно так:
    var a = 70;
    var b = 15;
    var result= [];
    
    num = (a - (a % b)) / b;
    
    for (i=0; i < num; i++) {
      result.push(b);
    }
    
    if ((a % b) < b && (a % b) != 0) {
      result.push((a % b));
    }
    
    console.log(result);  // (5) [15, 15, 15, 15, 10]


    Со случайными числами:

    var a = 70;
    var min = 5;
    var max = 15;
    var result = [];
    
    function getRandomIntInclusive(min, max) {
      min = Math.ceil(min);
      max = Math.floor(max);
      return Math.floor(Math.random() * (max - min + 1)) + min; 
    }
    
    while (a > 0) {
      b = getRandomIntInclusive(min, max);
      a = a - b;
    
      if (a >= 0 ) {
        result.push(b);
      } 
    
      if (a < 0) {
        b = b + a;
    
        if (b < min) {
          _t = min - b;
          b = b + _t;
    
          result.forEach(function(item, i) {
              if ((item - _t) > min) {
                result[i] = item - _t;          
                _t = 0; 
              }
            });
        }              
        result.push(b);
      }
    }
    
    var result_sum = result.reduce(function(sum, current) {
      return sum + current;
    }, 0);
    
    
    console.log('Сумма всех чисел: '+result_sum); // 70
    console.log(result); // (7) [15, 6, 10, 7, 5, 15, 12]
    Ответ написан
  • Яндекс не мог перепутать регионы?

    @NinjaNickName
    Web разработчик
    Регион можно задать в Веб.Мастере

    https://yandex.ru/support/webmaster/site-geography...


    Региональность сайта может учитываться при отображении результатов поиска по геозависимым запросам. Например, пользователь из Москвы ищет информацию об автосервисе по запросу [автосервис ремонт]. Скорее всего, он хочет найти ближайший к себе автосервис. В этом случае, если сайту присвоен регион Москва или Россия, то сайт отобразится в результатах поиска.


    Источники, по которым присваивается региональность:
    • Яндекс.Вебмастер. Вы можете указать желаемый регион сайта, а также изменить его, если считаете, что регион определен по другим источникам неверно.
    • Яндекс.Справочник, если вы добавили в него информацию об организации.
    • Яндекс.Каталог


    Информация о региональности сайта доступна на странице Информация о сайте → Региональность Яндекс.Вебмастера.
    Ответ написан
  • Как побороть ошибку: PHP Warning: json_encode() expects at least 1 parameter, 0 given..?

    @NinjaNickName
    Web разработчик
    json_encode — Возвращает JSON-представление данных

    json_encode ( mixed $value [, int $options = 0 [, int $depth = 512 ]] ) : string


    Какая у вас версия PHP ?
    Подозреваю, вторым параметром отправляется флаг, который появился позже, чем ваша версия PHP.

    7.3.0	Добавлена константа JSON_THROW_ON_ERROR для параметра options.
    7.2.0	Добавлены константы JSON_INVALID_UTF8_IGNORE и JSON_INVALID_UTF8_SUBSTITUTE для параметра options.
    7.1.0	Добавлена константа JSON_UNESCAPED_LINE_TERMINATORS для параметра options.
    7.1.0	При кодировании чисел с плавающей запятой используется serialize_precision вместо precision.
    5.6.6	Добавлена константа JSON_PRESERVE_ZERO_FRACTION для параметра options.
    5.5.0	Добавлен параметр depth.
    5.5.0	Добавлена константа JSON_PARTIAL_OUTPUT_ON_ERROR для параметра options.
    5.5.0	Возвращаемое значение в случае неудачи изменено со строки null на FALSE.
    5.4.0	Для options были добавлены константы JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES и JSON_UNESCAPED_UNICODE.
    5.3.3	Добавлена константа JSON_NUMERIC_CHECK для параметра options.
    5.3.0	Добавлены константы JSON_FORCE_OBJECT, JSON_HEX_AMP, JSON_HEX_APOS, JSON_HEX_QUOT и JSON_HEX_TAG, для параметра options.
    5.3.0	Был добавлен параметр options.
    Ответ написан
  • Долгий ответ сервера, причина не понятна?

    @NinjaNickName
    Web разработчик
    На что уходит время? На коннект с сервером, обработку запроса или генерацию страницы для отдачи? 3-4 секунды довольно много, подозреваю причина в долгой генерации страницы, причины которой можно узнать с помощью профилирования.

    Используйте xhprof или xdebug, чтобы выявить причину + предварительно изучите логи веб-сервера.
    Ответ написан
  • Какой язык лучше выбрать для проекта?

    @NinjaNickName
    Web разработчик
    Под вашу задачу и вопрос, единственное верное решение, использовать тот язык, который вы хорошо знаете.

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

    @NinjaNickName
    Web разработчик
    Знать нужно JS, ну и на чем там бекенд, обычно это PHP. (+ работа с бд конечно, верстку понимать опять же нужно и вообще как веб работает)

    Готовое решение фильтра, как правило, есть почти наверное во всех CMS для интернет-магазинов.

    Быстрый фильтр каталога для интернет-магазинов на ...
    Ответ написан
  • Как удалить уязвимость в скрипте админке?

    @NinjaNickName
    Web разработчик
    Верни обратно, это похоже соль.

    Но вообще пора бы уже использовать для паролей password_hash
    Ответ написан
  • Как оставить в ассоциативно массиве только определенные ключи?

    @NinjaNickName
    Web разработчик
    Хорошей практикой думаю было бы создать новый массив, вместо изменения текущего:

    $new_array  = [
    'доставка' => $data['доставка'],
    'номер_заказа' => $data['номер_заказа'],
    ];
    
    // дальше работаем с новым массивом
    Ответ написан
  • Что делать, если взломали и удалили сайт?

    @NinjaNickName
    Web разработчик
    Как обезопасить себя от последующего такого взлома?

    Запомнить раз и навсегда - нельзя доверять данным которые пришли от клиента.
    Это значит, что нужно абсолютно все данные пришедшие от клиента проверять на корректность.
    Ответ написан
  • Конструктор интернет-магазина с личным кабинетом для клиента и сообщениями?

    @NinjaNickName
    Web разработчик
    У нас (getOpen.Store) есть личный кабинет для клиентов, но нет личных сообщений между зарегистрированными клиентами (при этом, 1) можно отправлять сообщения в ИМ т.е. переписка с менеджерами магазина 2) можем добавить и переписку между зарегистрированными пользователями), сервис пока доступен в режиме закрытого тестирования, но до конца февраля планируем открывать регистрацию для всех, и по традиции, для первых клиентов особые условия, цена сравнима с ценой хостинга, никаких ограничений на кол-во товара и вообще, весь необходимый функционал доступен бесплатно, на всех тарифах.

    Если интересно, у меня есть контакты в профиле, напишите, обсудим и я смогу сформировать более конкретное предложение.
    Ответ написан