Задать вопрос
  • Как обратиться к методу класса с страницы?

    @imhuman
    происходит выход из учетки

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

    Нужно сделать ссылку на скрипт, где этот метод уже будет вызываться, по-другому никак.
    Ответ написан
    Комментировать
  • Какие заглушки для старых браузеров Вы используете?

    TroL929
    @TroL929
    веб-программист
    Пока искал подобный ответ нашел эту страницу и следом такую заглушку blog.toliklunev.ru/all/finalreject

    Решил поделиться)
    Ответ написан
    Комментировать
  • Как убедиться, что пользователь сделал репост в соцсети со страницы сайта?

    @Gregpopov
    Full stack web developer
    Бери API, и смотри, есть ли у пользователя Х запись, которая соответствует искомой
    Ответ написан
    Комментировать
  • Почему Invision Power Board не отправляет письма?

    alsopub
    @alsopub
    Письма отправляются не от ящик@mail.ru случаем?
    Ответ написан
    6 комментариев
  • Есть ли виджеты типа select2, или как правильно настроить select2?

    @forevist
    Front-End Developer
    не очень понял вопрос, не знаю что такое select2, но у многих ui-библиотек, есть такие мульти-дропдауны.
    В последний раз пользовался вот этим
    Ответ написан
    3 комментария
  • В чем разница в драйверах Linux, OS X и Windows?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    "драйвер это чаще всего графический инсталлятор"
    "Если в винде драйвер это инсталлятор, то что есть драйвер в Linux и OS X?"

    Не приравнивайте инсталлятор драйвера и сам драйвер. Драйвер в винде может предствлять собой один .inf файл, и не иметь никакого инсталлятора.

    У вас вообще сильно перепутано что такое драйвер и в качестве отличия драйверов между системами вы видите только способ установки, но всем системам нужны драйвера.

    Вам нужно просто понять принципы дистрибьюции софта в разных ОС.
    В Линукс принято пользоваться репозиториями, и редко качать что-то с сайта (обычно если качать, то там исходники, которые нужно еще и собирать)

    В Mac производитель железа и ОС один и тот же, поэтому идет с ОС, но для некоторых устройств - также на диске или с сайта, но так как производитель один, несложно организовать автоматическое скачивание, и даже сторонняя периферия сертифицируется в Apple, что упрощает автоматизацию.

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

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

    Если взять видеокарту, которая поддерживает DirectX12, то в Линуксе его (DirectX) вообще нет, и Линукс не сможет пользоваться всеми фичами, предоставляемыми карточкой, вот и ответ почему Линукс работает со многими устройствами стандартными драйверами, а Windows требует индивидуальный.
    Ответ написан
    Комментировать
  • Для чего нужны Генераторы (yield) в php?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    php.net/manual/ru/language.generators.syntax.php
    yield - возврат из функции с сохранением текущего итерационного состояния этой функции.
    При запросе следующего значения в цикле итерационном цикле - снова вызов этой функции с использованием сохранённого состояния, т.е. продолжение обработки данных с места возврата внутри этой функции.

    Можно провести некую аналогию с "курсором" и местом обработки данных в позиции курсора.
    Ответ написан
    3 комментария
  • Каким образом подтверждается авторство изображений?

    Занимается рисованием для чего? Как хобби? Или для продажи?
    Размещены они в интернете?
    Если для продажи, - то или использовать готовые ресурсы для продажи изображений. (сам с этим не связан, то знаю что есть) - там все настроено как говорится само, само изображение на превью покрыто водяными знаками, а при покупке - отдается без них. Человек купил, вы получили деньги, сайт получил комиссию.

    Если имеете свой ресурс, где выкладываете изображения, - то можно самому реализовать такую схему, на просмотр отдается, с водяными знаками + размер картинки хуже. При оплате - отдается полноценное изображение.
    В обоих случаях, нужно использовать лицензионное соглашение. В зависимости от того,что и как вы хотите.

    Если просто Изображения, расположены на сайте личном, просто для демонстрации - без цели заработка, - то достаточно, своего логотипа в углу. И пометкой, для использования на своих ресурсах, обязательна ссылка на источник(если используется в коммерческих целях).
    и т д... Нюансов много, все зависит от ситуации.
    Ответ написан
    Комментировать
  • Что такое триггер?

    @deliro
    Действие, которое срабатывает при каком-то событии.
    Ответ написан
    Комментировать
  • Какие задачи решает реактивное программирование?

    nasnetstep
    @nasnetstep
    Пример из Википедии

    В императивном программировании выражение

    a = b + c
    Означает взять текущие значения 'b' и 'c', сложить их и присвоить 'a' результат. Дальнейшие изменения параметров 'b' и 'с' не влияют на 'a'.

    В реактивном программировании то же выражение:

    a = b + c
    Означает, что 'a' есть сумма 'b' и 'с'. Если 'b' или 'c' изменятся в будущем, это отразится на величине 'a'.
    Ответ написан
    Комментировать
  • Как зарабатывают разработчики на бесплатных framework`ах?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Весьма нескромный вопрос с достаточно тривиальным ответом, но тем не менее, сотней подводных камней.

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

    Но. Когда деньги не главное встаёт вопрос об улучшении мира. И если просто взять и улучшить его, хотя бы чуть чуть не так уж и сложно, то не сдохнуть с голода при этом чуточку сложнее. Политика монетизации бывает весьма разнообразной, от модного нынче SaaS или даже PaaS, до весьма консервативной платной круглосуточной технической поддержки. Можно выкладывать в open source не всё, а лишь часть, зарабатывая на остальном, можно дорабатывать по заказу, можно вообще плодить странные модели монетизации, вроде разного рода сертификации (как Oracle с Java, хотя это и не совсем open).

    Вообще, стоит заметить, что сегодня практически любая мало мальски серьёзная компания инвестирует в open source. Не потому что это модно, а потому что это удобно, это коммунизм на ровном месте, идеология Маркса и Ленина здесь отрабатывает на все 146%. И на то есть простые причины.

    Язык. Когда я прихожу на работу и говорю про linux, я, почти всегда, подразумеваю posix. Когда я работаю и пишу код в vim, собираю по Makefile с помощью gcc, отлаживаю с помощью gdb, а потом отправляю на сервер при помощи git push, я использую готовые, давно разработанные, отлаженные, продукты. После этого, прошивка в виде бинарного кода отправляется на железку, эта железка встаёт на своё место и самолёт летает. Там внутри туча байтов летает туда сюда используя arinc, rs232, ethernet, vga, usb и прочий параллелизм, но самолёт всё ещё летает. Там постоянно происходят ошибки, но CRC-32 легко отлавливает ошибки, а то и исправляет на лету, и самолёт продолжает летать. Свободный софт хорош тем, что им легко задавать стандарты. Один раз написал, триллион раз протестировал, гуглплекс раз использовал.

    Не просто так товарищ Столман говорил про GNU, с чего, собственно, всё и началось. Что это не как free beer, но как free speech. Мы говорим, мы общаемся, мы постоянно обмениваемся наработками. Это не остановить, даже если ввести драконовские штрафы и жуткие законы. Но и не надо останавливать, вы лучше оставьте, наконец, общение естественно свободным. Мы общаемся и не просим за это денег. А с голода не умрём, ведь самолёты всё ещё должны летать =)
    Ответ написан
    Комментировать
  • Не удаляются переносы строк PHP. Что может быть?

    может nl2br($str) вам поможет?
    Ответ написан
    Комментировать
  • Какое время ответа сервиса должно быть при разработке api?

    dmitry_pavlov
    @dmitry_pavlov
    World-class .NET freelance contractor (remotely)
    В старой книжке по юзабилити было сказано примерно так:

    0,1 s (или 100 ms) - предел, до которого пользователю кажется, что система работает мгновенно и никаких прогресс баров не требуется.

    1 s (или 1000 ms) - предел, до которого пользователь замечает небольшую задержку, но в целом ему кажется, что все работает нормально.

    10 s (или 10 000 ms) - пользователь перестает следить за процессом и ему кажется что система подвисла.

    В целом логика проста: меньше - лучше. Думаю, что предел когда все можно считать OK - до 1 секунды, лучше 500 ms (если конечно речь не про вызов API в цикле - тогда надо чтобы все запросы уложились в этот предел). Если отклик больше имеет смысл для той системы (обычно некий пользоваельский интерфейс), которая использует API - добавить какую-то анимацию вроде индикатора загрузки - в этом случае пользователь спокойней переносит б0льшие интервалы отклика, так как видит что система что-то делает. Обычно в веб приложении, которое лезет за данными (особенно если это не по одному элементу а обработка пакетом) в какие-то внешние системы делают индикатор. Можно довольно просто навесить какую-то анимацию на все AJAX вызовы с помощью api.jquery.com/category/ajax/global-ajax-event-handlers - на старт показывать на завершение скрывать. Есть много готовых решений.
    Ответ написан
    5 комментариев
  • Как сделать Auth::check() && login == 'HeartProgrammer'?

    DJZT
    @DJZT
    Laravel - code for you
    Вам необходимо сделать роли и доступы в приложении. Это будет правильней.
    Посмотрите в сторону пакета Entrust
    или
    Sentinel
    Первый на стандартной аутентификации работает, а второй со своей. Придётся немного переделать структуру.

    А на крайний случай
    @if(Auth::check() && (Auth::user()->is_admin)
    <p><a href="#" class="btn btn-success" role="button">Редактировать</a> <a href="#" class="btn btn-danger" role="button">Удалить</a></p>
    @endif


    А в БД заведите boolean поле is_admin.
    Ответ написан
    5 комментариев
  • Что наследуется в ООП?

    Класс наследуется, интерфейс реализуется.
    interface I {}
    class A {}
    class B extends A implements I {}

    Класс обычно называют чертежом объекта. А интерфейс - это контракт, который объект обязан выполнить.

    Возьмем, например, Велосипед, Грузовик и Мотоцикл.

    Мотоцикл - это почти Велосипед, он делается по тому же чертежу с небольшими дополнениями. Это наследование. Грузовик при этом ни от Велосипеда, ни от Мотоцикла не наследуется, у него совсем другой чертёж.

    Но каждый из этих объектов реализует контракт ТранспортноеСредство. Если у вас есть объект, являющийся ТранспортнымСредством, вы всегда уверены, что доедете из пункта А в пункт Б и при этом вам совершенно неважно сколько у этого объекта колёс.

    А вот если у вас есть контракт Автомобиль, то вы знаете, что можете выполнить такие действия как ОткрытьКапот, ВключитьСтеклоочистители. Велосипед при этом не сможет реализовать такой интерфейс. А Грузовик будет реализовывать оба контракта: хотите - передвигайтесь, хотите - открывайте капот.
    Ответ написан
    2 комментария
  • Какое оптимально количество функцый должно быть в класе?(лучшие практики)?

    @Alexander1705
    прочитал что ради 2 функции не стоит создавать клас

    Ради функций класс вообще не нужно создавать. Класс нужно создавать, когда нужно представить некую сущность. А методов должно быть столько, сколько эта сущность подразумевает.
    Ответ написан
    Комментировать
  • Кто прав, заказчик или фрилансер?

    alsopub
    @alsopub
    Если более никаких нюансов в договоре нет - прав фрилансер, имхо.
    Иначе так по ссылкам на внешние ресурсы (счетчики и тд) можно далеко "вглубь" уйти.
    С другой стороны, если эти страницы можно легко спарсить скриптом - то не стоит раздувать скандал.
    Ответ написан
    2 комментария
  • Онлайн сервис по написанию мануала/документации?

    Vlad_IT
    @Vlad_IT
    Front-end разработчик
    Такое? https://readthedocs.org/ Получится вот такое peewee.readthedocs.org
    Ответ написан
    Комментировать
  • Есть такая функция в PHP?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    <?php
      $list = array("hello", "privet");
      $arr = array("hello" => "Vasya", "privet" => "Petya", "zdorovo" => "Misha");
      $arr = array_filter($arr, function($key) use ($list) { return in_array($key, $list); } , ARRAY_FILTER_USE_KEY);
      print_r($arr);
    ?>
    Ответ написан
    Комментировать
  • Как в Yii2 происходит реляционный delete()?

    arutyunov
    @arutyunov
    Mooza.ru — Делаем сайты
    В базе данных для внешних ключей можно указать ON DELETE CASCADE, тогда при удалении родителя будут удаляться и все зависимые записи.

    Средствами фреймворка удаляете 1 запись (родительскую), а база данных дальше сама разрулит и удалит все, что нужно.
    Ответ написан
    4 комментария