• Как извлечь текст из видео?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    Как извлечь эти данные, из самой "картинки"? Есть ли готовые решения на PHP или других язык программирования?
    Есть. И для PHP и для других языков программирования, очень давно уже изобрели OCR или "Системы оптического распознавания текста" (к слову, нечто подобное по смыслы мониторит российские дороги, в формате камер для поиска нарушителей ПДД).

    Если воспользоваться поиском, в т.ч. по "Тостеру", то среди прочего мы увидим следующее:
    1. https://www.abbyy.com/ru-ru/ocr-sdk/ пожалуй лучшая распознавалка, от Abby
    2. Ответ на "Тостере"
    3. Немного про распознование текстов на хабре
    4. Ещё про OCR на PHP
    5. Ещё немного
    6. И т.д.
    Ответ написан
    Комментировать
  • Верстка таблицы. Как объединить ячейки?

    Wolfnsex
    @Wolfnsex Куратор тега HTML
    Если не хочешь быть первым - не вставай в очередь!
    Не представляю, в чём проблема... Пример (на половину таблицы, далее - по аналогии).
    Ответ написан
  • Как скрыть фрагмент html кода не удаляя его?

    Wolfnsex
    @Wolfnsex Куратор тега HTML
    Если не хочешь быть первым - не вставай в очередь!
    Возможно ли это сделать?
    Да, можно его закомментировать . А что бы он совсем не читался (людями) - можете его в закодировать в Base64 или вообще зашифровать (с помощью стороннего ПО).
    Ответ написан
  • Как сделать выборку из базы данных mysql php от указанного id до указанного id?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    MySQL: Between

    Самый простой способ выполнить запрос к MySQL от PHP, это пожалуй MySQLi, на тему которого есть масса статей и примеров, например тут и ещё документация вот тут.
    Ответ написан
  • От чего возникает ошибка в PHP?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    Для записи многострочного текста нужно использовать конструкцию <<<, тогда и ошибок (кусков кода) подобных не будет.
    Ответ написан
  • Как настроить PhpStorm 2016.1.2+Openserver?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    Как я понял, единственная цель PhpStorm+Openserver это "заменить" устаревший локальный сервер PhpStorm на современный Openserver со всеми настройками, возможными дополнениями, дебагеррами и т.д.


    Цель PhpStorm'a - предоставить IDE. Цель OpenServer'а - предоставить полноценную (до некоторой степени) среду разработки и выполнения PHP-скриптов/приложений/сайтов/etc. Помимо интерпретатора PHP, в OpenServer'е есть масса других модулей (программ), в зависимости от "комплектации": от различных баз данных, для всяких "офисов" и т.д. Это связано с тем, что в большинство проектов не ограничивается исключительно интерпретатором PHP, многим так же требуются различные БД, иногда хранилища (например, Redis или Memcached) и прочие инструменты.

    PhpStorm пишет - configuration php.ini file does not exist. Но php.ini там разумеется есть.
    Возможно, это связано с тем, что в путях содержится что-то отличное от латинских букв (иногда могут так же "мешать" пробелы в путях, хотя это бывает гораздо реже).

    Обычно, процесс выглядит следующим образом:
    0. Указывать путь до интерпретатор PHP не всегда обязательно или необходимо, иногда без этого можно вполне обойтись
    1. В папке, в которую установлен OpenServer, среди прочего, есть папка domains, в которой вы создаёте папку с будущим проектом (сайтом) и называете её, например, site1.local
    2. (Пере)запускаете OpenServer, крайне желательно это делать с правами администратора, т.к. он будет вносить изменения в файл hosts системы, что бы сайт стал доступен по соотв. адресу (в данном примере, по адресу: site1.local)
    2.1. Открыть проект так же можно через меню OpenServer'a: Мои сайты -> "Нужный сайт"

    Что бы проект открывался в PhpStorm'е по соотв. ("правильному") адресу, вместо встроенного веб-сервера - я думаю, нужно изменить какие-то настройки проекта в PhpStorm (какие именно - сказать затрудняюсь, т.к. никогда не пользовался таким способом работы с проектом).

    P.S. Для того, что бы отлаживать проект в разных браузерах, обычно используют различные BrowserSync'и, LiveReload'ы и т.п.

    P.P.S. Если Вам нужен простой веб-сервер с поддержкой PHP, исключительно для разработки/отладки - такой сервер есть в самом PHP.
    Ответ написан
    2 комментария
  • На какой срок кешировать изображения, файлы css, js?

    Wolfnsex
    @Wolfnsex Куратор тега Веб-разработка
    Если не хочешь быть первым - не вставай в очередь!
    На какой срок кешировать изображения, файлы css, js? Имею ввиду Cache-Control, Expires в заголовке ответа. Что учитывать при выборе срока?
    Для выбора минимального срока кэширования, можно учитывать рекомендации Google PageSpeed например, для максимального - особенности конкретно вашего проекта и как следствие - конечную необходимость.
    Ответ написан
    Комментировать
  • Как обновлять каждую секунду значение в MySQL посредством PHP?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    Как мне кажется из каменного века. Создать отдельное поле, в которое я сохраняю точное время инициации действия. В тот момент когда мне надо показать пользователю поле "account" я показываю account + ( (дата инициации дейтсивя обновления поля accoutn) - (дата отображения поля) )*(нужный параметр добавления)
    "Долбить" базу каждую секунду, без особой на то нужды, когда можно этого не делать - плохая идея. Данное решение описывает более рациональный подход, если он конечно возможен.

    Писать сторонний микросервис, который будет отправлять каждую секунду запросы в БД и увеличивать значение.
    Не знаю, что Вы подразумеваете под "сторонним микросервисом" и как это в конечном итоге должно работать (логически), например при нагрузке, запросы могут вставать в очередь и данные могут терять свою актуальность в этом (вашем) случае... Можете попробовать несколько вариантов:

    1. Попробовать использовать "родные" события MySQL

    2. Создать примитивный скрипт PHP, типа такого и запустить его (на бесконечное выполнение):
    <?php
    while(true) {
    mysql_query("..."); //Условно
    sleep(1);
    }
    но, он будет выполняться не 1 раз в секунду, а с паузой в 1 секунду

    3. Загадить крон заданиями, в кол-ве около 60 штук (т.к. крон задания запускаются минимум 1 раз в минуту), как это примерно должно выглядеть описано здесь, что в целом тоже не очень надёжно, т.к. высока вероятность, что рано или поздно, запросы могут отвалиться, приводя тем самым самым данные в неактуальное состояние.
    Ответ написан
    1 комментарий
  • Как избежать пуша?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Я хочу оставить себе последний стянутый мастер, но бесполезный Push делать не хочу. Можно как-то избежать этого пуша?
    Можете сделать этот пуш в другую ветку (на всякий случай, если эти изменения нужны), после чего сделать hard reset.
    Ответ написан
    Комментировать
  • Как сделать кэширование SQL результатов?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    Возможно ли сохранить объект ответа sql, без выполнения fetch?
    Не совсем понимаю, в каком ракурсе речь идёт про fetch и что означает "сохранить объект ответа в базе"? Курсор сохранить?

    Курсор в базе сохранить, вряд ли Вам удастся, а вот сохранить результат можно в другую таблицу, не получая результаты запроса из БД. Как это сделать, написано например тут. Сохранить результат можно, например, во временную таблицу (в т.ч. хранящуюся в оперативной памяти, для скорости), или в постоянную таблицу, или в таблицу в другой БД на этом же сервере (и т.д., вариантов масса).
    Ответ написан
  • Как динамически подгружать список городов при выборе страны select`ом?

    Wolfnsex
    @Wolfnsex Куратор тега HTML
    Если не хочешь быть первым - не вставай в очередь!
    где можно взять массив городов
    Изначально, я думаю, в интернете, например тут. После чего, Вы можете их сохранить либо в один большой-большой JSON, либо так и оставить в базе данных и получать их оттуда.

    Далее, алгоритм выглядит примерно так:
    1. Пользователь выбирает страну, на сервер отправляется ID выбранной в селекте страны (GET или POST запросом)
    2. В ответ от сервера приходит список регионов/городов выбранной страны, предположительно в формате JSON
    3. Полученный список разбирается на ID=Значение, которыми заполняется второй селект

    Можно так же заранее заполнить второй селект всеми возможными городами и потом скрывать лишние, но я бы так делать не стал, так как данных будет очень много и грузиться эта страница будет так же, не очень быстро...
    Ответ написан
    Комментировать
  • Как откатить права на файлы на час назад в Ubuntu?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Есть подозрение, что "откатить права в системе на "15 минут назад" - никак, если до этого не был сделан снапшот системы или что-то в таком духе... но, решение, относительно не сложное есть.

    1. Берёте такую же точно систему (аналогичный сервер например)
    2. Пишите скрипт, который будет перебирать всю файловую систему и записывать в текстовый файл, в строчку: путь до файла (каталога) + права на него
    3. Закидываете на сервер готовый файл с получившимся результатом и запускаете обратную операцию, аналогичным скриптом (установка прав в соотв. с указанным путём)

    Либо, берёте аналогичный работающий сервер и перекидываете все данные туда...

    P.S. Возможно, есть более красивые решения, или даже какие-то системные скрипты (готовые), которые установят нужные права правильно, но, "по быстрому" мне в голову приходит решение которое я озвучил выше.
    Ответ написан
    1 комментарий
  • Как адаптировать весь сайт который статичен?

    Wolfnsex
    @Wolfnsex Куратор тега CSS
    Если не хочешь быть первым - не вставай в очередь!
    Мне только приходит в голову адаптировать с помощью медиа запросов. Подскажите как лучше.
    Лучше - с помощью медиа-запросов, судя по всему. А Вам известны какие-то другие способы сделать сайт адаптивным? (если не бросаться в крайние крайности, типа "очень много float'ов" или "засилье JS'а").
    Ответ написан
    2 комментария
  • Как решить проблему Error mounting в Ubuntu?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Есть подозрение, что диск который Вы пытаетесь смонтировать - имеет файловую систему отличную от iso9660, о чём собственно и сообщает команда.
    Ответ написан
  • Какой из CRUD-генераторов на Laravel лучший?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    P.S. Разумеется, GitHub проверял
    Я бы на Вашем месте проверял бы всё-таки вот этот сайт, куда удобнее, чем по GitHub'у шариться...

    Ну и
    но принимать решение в выборе "по количеству звездочек" - на мой взгляд слишком обывательский подход.
    В этом я Вас полностью поддерживаю, я бы в дополнение к звёздочка основывался бы так же на: кол-ве загрузок, совместимостью с вашей версией фреймворка, активностью разработки проекта, датой последнего обновления оного и другими параметрами.
    Ответ написан
    Комментировать
  • Для чего нужен MySQL Shell на Windows?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Информации о том, что такое Shell и для чего он нужен в сети очень мало. В чем смысл этого Shell? В каких случаях мне без него не обойтись? И где можно почитать об этом поподробнее?


    Почему же мало? Вот тут написано про него, достаточно подробно: раз и два.

    Насколько я понимаю, это "улучшенная" версия обычного консольного MySQL-клиента, обойтись без которого Вы можете совершенно спокойно, если работа в консоли Вам претит или Вы привыкли работать через "оконные" программы (что безусловно удобнее, в ряде случаев). Скорее всего, разница между стандартным MySQL-клиентом (консольным) и этим новым, примерно такая же как между Windows-cmd и Windows PowerShell... И появился он судя по всему, только в MySQL 5.8 (8.0).
    Ответ написан
    Комментировать
  • Правильо ли я понял суть экранированных последовательностей?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    С помощью служебных символов имеется возможность указать специальные символы, которые называются экранированные последовательности (\n, \t, \a и т.д).
    Не до конца понятен смысл этой фразы.

    Экранированные последовательности представляют служебные символы которые сложно ввести с клавиатуры.
    Нет. Например, \t, \n, \r и т.д. ввести с клавиатуры не представляет собой вообще никакого труда.

    Так уж повелось, с давних времён, во многих языках программирования, программах, файлах конфигурации и т.д. (хотя безусловно не везде это так), символ \ обозначает, что идущий следом за ним символ является специальным или его нужно экранировать. Например, если вы в командной строке линукса напишите \ и нажмёте [Enter] - ввод продолжится с новой строки, в ином случае, нажатие клавиши [Enter] будет означать завершение ввода команды и (вероятнее всего) начала её исполнения. Но, иногда нужно или просто удобно, вводить команду в несколько строк...

    В т.ч. например, в регулярных выражениях, ряд символов носит специальный смысл, в т.ч. такие символы как: . (точка), [, ], (, ), и т.д., и что бы использовать эти символы как "обычные" (что бы они "потеряли" своё специальное значение и стали "простыми" символами), их нужно предварительно экранировать.

    P.S. Мне кажется, Вы как-то очень сложно описали простую вещь, как-то "слишком по научному".
    Ответ написан
    8 комментариев
  • Где скачать и установить старую версию Хрома для Windows?

    Wolfnsex
    @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
  • Таймер как реализовать?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    Но как сделать так чтобы этот таймер работал даже когда пользователь полностью вышел из сайта, удалил куки и все такое, тоисть таймер будет работать и отправит запрос в бд, даже если пользователя нету на сайте.

    Я бы предложил поступить следующим образом:
    0. Взять VPS, выделенный сервер или иную полноценную площадку, позволяющую использовать нужное ПО, а не только то, которое подготовил для нас хостер (*цены на VPS, вполне сравнимы с обычными хостингами)
    1. Использовать утилиту at

    Выглядит всё примерно следующим образом:
    1. Пользователь отправляет какой-то запрос на сервер
    2. Сервер обрабатывает его и формирует нужную команду, которая будет запущена через N минут
    3. Команда выполняется через указанное время, все счастливы

    Пример того, как выполнить что-то через 5 есть например здесь
    Ответ написан
  • Какой объем Cookie поддерживают браузеры?

    Wolfnsex
    @Wolfnsex Куратор тега Веб-разработка
    Если не хочешь быть первым - не вставай в очередь!
    а как на самом деле дела обстоят — есть достоверная информация по браузерам?
    А на самом деле, есть тесты, например вот такой, а так же здравый смысл, который подсказывает, что размер куки >4Кб - в подавляющем большинстве случаев говорит о серьёзных ошибках разработчика.
    Ответ написан
    Комментировать