Все сервисы Хабра

Сообщество IT-специалистов

Ответы на любые вопросы об IT

Профессиональное развитие в IT

Удаленная работа для IT-специалистов

Войти на сайт
  • Все вопросы
  • Все теги
  • Пользователи

Хабр Q&A — вопросы и ответы для IT-специалистов

Получайте ответы на вопросы по любой теме из области IT от специалистов в этой теме.

Узнать больше
другие проекты хабра
  • Хабр
  • Карьера
  • Фриланс
Задать вопрос

Иван Антонов

Профессиональный самоучка
  • 63
    вклад
  • 169
    вопросов
  • 67
    ответов
  • 100%
    решений
Лайки
  • Информация
  • Ответы
  • Вопросы
  • Комментарии
  • Подписки
  • Нравится
  • Достижения
  • Как обновлять только статусы заказов?

    udjin123
    Евгений @udjin123
    PHP, Golang, React
    1с отправляет данные на скрипт /bitrix/admin/1c_exchange.php
    В этом файле за обновление заказов из 1с отвечает кусок кода, где вызывается компонент sale.export.1c, в котором за все это отвечает класс CSaleOrderLoader

    Как кастомизировать выгрузку не трогая ядро?

    1. Создаем свой класс и наследуем его от CSaleOrderLoader ну или тупо копи-пастим CSaleOrderLoader но уже своим названием, пусть будет MyOrderLoader

    2. Меняем в нем логику обновления заказа из 1с (запасаемся валерьянкой и кофе, там класс на ~4000 строк)
    5e35dc000fc8b072477447.jpeg

    3. Создаем папочку /local/bitrix/components/custom и копируем туда компонент sale.export.1c (да, да! в компоненте с названием export, делается импорт)
    5e35dd91e8fa4990941836.jpeg

    4. В файлике /local/bitrix/components/custom/sale.export.1c/component.php подменяем название класса CSaleOrderLoader на MyOrderLoader

    5. Копируем /bitrix/admin/1c_exchange.php в /bitrix/admin/my_1c_exchange.php и меняем в нем вызов
    bitrix:sale.export.1c на custom:sale.export.1c

    6. В 1ске в модуле обмена меняем путь соответственно на /bitrix/admin/my_1c_exchange.php
    5e35db643087f714543457.jpeg
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
  • Как загрузить файл на сервер через ссылку?

    Symphony
    Azim Kurt @Symphony
    файл load.php
    <?php
    // Каталог files
    $link = 'https://www.google.ru/images/srpr/logo11w.png';
    $uploaddir = './files/';
    $uploadfile = $uploaddir.basename($link);
    
    // Копируем файл в files
    if (copy($link, $uploadfile)){
         echo "Файл успешно загружен на сервер";
    }
    ?>
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • MODx какие таблицы обязательны для заполнения чтобы создать материал через базу данных?

    an-tar
    Антон Тарасов @an-tar Куратор тега MODX
    Full stack web developer
    Вероятно после сохранения надо дополнительно сбрасывать кеш, если вы этого не делали до того.
    Ответ написан более трёх лет назад
    4 комментария
    4 комментария
  • Можно ли брать ОЗУ с частотой выше максимальной частоты оперативной памяти указанной в характеристиках процессора?

    nrgian @nrgian
    Можно. Но работать от этого она быстрее не будет.

    Также смотрел один из ютубовских роликов, в нем чувак говорил, что сейчас большинство CPU умеют даже с 4000 работать.

    Вранье.
    Правильно: "некоторые современные модели умеют"

    А если ты собираешься разгонять, то добавь еще хорошую систему охлаждения.
    И см. чего умеет твоя материнская плата.
    Ответ написан более трёх лет назад
    4 комментария
    4 комментария
  • Как реализовать рендер 3D с выбранными текстурами для php сайта?

    Dnebl
    Dnebl @Dnebl
    Есть такая сцена в demo.blend

    в сцене создал объекты и изменил их названия в дереве сцены
    сохраняем сцену в файл
    5c6d20b395d4b830957594.png
    texture.jpg
    5c6d22dd9cdeb375105608.jpeg

    и такой скрипт
    в скрипте находим объект создаем материал,текстуру,накладываем на объект,и рендерим сцену
    #blender-demo.py
    import bpy
    import os
    
    cubeMesh = bpy.data.objects['CUBE_1'] #находим нужный объект 
    
    mat = bpy.data.materials['Material'] 
    tex = bpy.data.textures.new('TextureName', 'IMAGE') 
    
    image_path = '/home/username/texture.jpg'
    image = bpy.data.images.load(image_path) 
    tex.image = image
    
    slot = mat.texture_slots.add()
    slot.texture = tex
    cubeMesh.data.materials.append(mat) 
    
    bpy.data.scenes['Scene'].render.filepath = '/home/username/demo.png'
    bpy.ops.render.render( write_still=True )


    Далее запускаем blender командой
    blender demo.blend -b --python "/home/username/blender-demo.py"


    вот что на выходе demo.png
    5c6d23bfd5576844856177.png
    Ответ написан более трёх лет назад
    6 комментариев
    6 комментариев
  • Как правильно расставить права на директорию сайта, чтобы удобно работать с ней локально?

    alekciy
    Алексей Сундуков @alekciy
    Вёбных дел мастер
    Правильный вариант:
    1) Отключить SELinux вообще.
    2) Создать группу dev: sudo groupadd dev
    2) Свести в группу dev пользователей nginx и Antonov (и вообще всех кому требуется доступ к этому поддереву файлов), как уже упомянул Yar Rick , командой:
    sudo usermod -aG nginx dev
    sudo usermod -aG Antonov dev

    3) Рекурсивно сменить права на директории на 2775 и 664 для файлов командами:
    sudo find /etc/share/nginx/joomla.test -type d -exec chmod 2775 {} \;
    sudo find /etc/share/nginx/joomla.test -type f -exec chmod g+w {} \;

    Почему именно 2775 можно посмотреть в видео: https://www.youtube.com/watch?v=EAfcMMlcNgg&t=704s
    4) Уставить для nginx и php-fpm значение umask=002 (либо воспользоваться ACL и не зависеть от umask, пояснение в видео: https://youtu.be/gLMUCEiMFYA?t=365 ).

    Возможно ли настроить так чтобы работало все при правах в 700?

    Да, возможно. Но придется запускать nginx от Antonov и php-fpm запускать от Antonov. Но вообще 0700 большого смысла не имеет (хотя использовать на корневой папке 770 возможно).
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Получит ли мой сайт вес от внешних ссылок, которые я добавил в robots.txt?

    webinar
    Максим Тимофеев @webinar
    Учим yii: https://youtu.be/-WRMlGHLgRg
    Теоретически они уже проиндексированы и сразу не пропадут и видимо вы будете терять ссылочную массу по мере того, как поисковик, будет их выкидывать.

    Я думаю лучше не убирать, а прописать для них url canonical ибо он для этих случаев и создан
    https://support.google.com/webmasters/answer/13906...
    Тогда они просто уйдут из результатов поиска отдав вес канонической странице
    Ответ написан более трёх лет назад
    5 комментариев
    5 комментариев
  • Почему дизайнеры делают макеты сайтов в Photoshop?

    Nekto_Habr
    Нерон Лордов @Nekto_Habr
    Чат дизайнеров: https://t.me/figma_life
    Да по инерции. Это каменный век уже. Если дизайнер делает дизайн в фотошопе - значит, либо это ленивый дизайнер, который не хочет стать более продуктивным, либо над дизайнером стоит ленивый верстальщик, который ничего кроме фотошопа не знает и знать не хочет.
    Ответ написан более трёх лет назад
    12 комментариев
    12 комментариев
  • Почему дизайнеры делают макеты сайтов в Photoshop?

    iiiBird
    iBird Rose @iiiBird
    Пока ты спишь - твой конкурент совершенствуется
    1) другие инструменты появились относительно недавно.
    2) привычка
    3) не только дизайнер решает на чем нужно выдать окончательный макет. (последнее слово далеко не за дизайнером)
    Ответ написан более трёх лет назад
    2 комментария
    2 комментария
  • Предпросмотр картинки перед загрузкой на сервер?

    sayber
    Sergej @sayber
    Да, я программирую на PHP и еще асинхронно!
    PHP и MySQL тут не причем.
    Это относится исключительно к js.
    Если мы говорим о превью.

    Примеров в гугле куча. Вот первое что было.
    jsfiddle.net/ksevelyar/mUHeU/4
    https://jsfiddle.net/lesson8/9NeXg/
    stackoverflow.com/questions/39439760/how-to-previe...

    За реализацией самой задачи, стоит обратиться на специализированный проект https://freelansim.ru/
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Какая скорость работы REGEXP в MySQL?

    ThunderCat
    ThunderCat @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    Одна из самых жадных на ресурсы функций, не только в мускуле, не зря есть пословица - “Если у вас есть проблема и вы решили использовать регулярные выражения, у вас уже две проблемы”
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как создать субдомен для Symfony?

    slimus
    Алексей Романенко @slimus
    Symfony, Golang
    Вот тут про роутинг: symfony.com/doc/current/routing/hostname_pattern.html
    Чтобы это работало в dns нужно иметь запись для каждого поддомена или для *.
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Как организовать временное хранение картинок?

    Wolfnsex
    Евгений Вольф @Wolfnsex
    Если не хочешь быть первым - не вставай в очередь!
    Всё предельно просто.

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

    У Вас есть картинки, которые привязаны (должны быть) к какому-то объявлению, которое создаётся ранее. С помощью CRON'а, вы находите объявления, которые более не ликвидны (недоопубликованы например) и по простой связи находите их картинки и удаляете всё сразу (и объявления и картинки).

    Другой вариант: у Вас объявление создаётся позже, чем картинки. То есть, картинки некоторое время, до полного формирования объявления существуют в некоем вакууме. В этом случае, Вы добавляете каждой картинке поле - "дата загрузки" и выбираете все картинки, дата загрузки которых была более суток назад и которые не привязаны ни к одному объявлению (т.е. поле объявление_id == NULL).

    Всё это делается по CRON'у, который запускает какой-то метод контроллера (судя по тому, что Вы используете Symfony). Обычно эту задачу решает утилита wget, которую запускает CRON. Что бы предотвратить "случайные" запуски со стороны пользователей - можно добавить проверку по GET-параметру, содержащему какой-нибудь хеш.
    Ответ написан более трёх лет назад
    27 комментариев
    27 комментариев
  • Конкуренция на фриланас бирже?

    opium
    Пума Тайланд @opium
    Просто люблю качественно работать
    Ну про конкуренцию хорошо описано на апворкесте
    Если поправить простор галочку на сайте то будет 500 исполнителей, если верстать сложный шаблон то еще повезло если хоть один из соискателей сможет
    upworkest.ru/konkurentsiya-na-frilanse
    Ответ написан более трёх лет назад
    9 комментариев
    9 комментариев
  • Плавное рисование линии в canvas?

    trushka
    trushka @trushka
    trushka.narod.ru/sketch0 и trushka.narod.ru/sketch - это когда-то делал.. Ну, отправка на сервер не работает, так как на укоз залил. Кстати, из-за этого может с первого раза не работать вообще, если покажет рекламу в попапе - там видно укоз jQuery более новым переписывает, я давно писал, ещё bind-unbind для обработчиков использовал.. В общем, если не захочет рисовать (а в /sketch/ показывать попап с рисовалкой) - просто перезагрузить страничку

    В sketch0 использовал кривые безье многоточечные для рисования, но потом уже допиливая, понял, что положительно влияет на плавность это намного меньше, чем отрицательно на производительность - в общем, в sketch просто равномерно заполняется кружочками отрезок между предыдущей точкой срабатывания mousemove и текущей. Кстати, чтоб не было "лесенки", кружочки заполняются градиентом, но точки генерируются так часто, что полупрозрачной оказывается только самая кромка линии - это сделано для одинакового отображения в разных браузерах, есть более простой способ - рисовать прямые отрезки между точками и добавлять к ним размытие или размытую тень. Но тогда они по-разному отображаются в разных браузерах. Для ускорения "кисточка" генерируется один раз в скрытом canvas'e, и потом вставляется как картинка. Толщина меняется колёсиком мыши

    Скрипт там основной - editor.js Там конечно не очень.. этосамое, но разобраться, я думаю, можно. Кстати, там ещё предусмотрена "история" - после каждого mouseup текущее состояние холста сохраняется в картинку, добавляющуюся в массив. Потом при возврате выводится соответствующая картинка на холст. В общем вот такой вот вариант)
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Плавное рисование линии в canvas?

    TheShock
    Павло Пономаренко @TheShock
    Смотрите, как сделано в Гимпе:
    b600e3f6abf9762bab4e3290dc5a68a5.png

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

    Ну и вот как референс: libcanvas.github.io/archive/5iton
    Ответ написан более трёх лет назад
    Комментировать
    Комментировать
  • Почему в UIkit первый клик на кнопку срабатывает два раза?

    Виталий @vshvydky
    https://jsfiddle.net/wyj6wp0r/10/
    видимо где-то глубоко глубоко есть какое-то событие once (однократное).
    решение блокировать его через return false
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Почему не работает KnpPaginatorBundle 2.5.3 в Symfony 3?

    BoShurik
    BoShurik @BoShurik Куратор тега Symfony
    Symfony developer
    Забыл return в методе queryGetList
    Ответ написан более трёх лет назад
    1 комментарий
    1 комментарий
  • Как изменить размер картинки налету и сохранить её в папку?

    BoShurik
    BoShurik @BoShurik Куратор тега Symfony
    Symfony developer
    https://github.com/liip/LiipImagineBundle
    Ответ написан более трёх лет назад
    25 комментариев
    25 комментариев
  • Как правильно составить RedirectMatch?

    imhuman @imhuman
    #upd. start
    RewriteBase /
    #upd. finish

    RewriteCond %{REQUEST_URI} /$ [NC]
    RewriteRule ^(.*)(/)$ $1 [L,R=301]
    Ответ написан более трёх лет назад
    3 комментария
    3 комментария
Оценили как «Нравится»
  • 1
  • 2
  • 3
  • 4
  • Следующие →
Самые активные сегодня
  • scoffs
    Семён Окулов
    • 14 ответов
    • 0 вопросов
  • vabka
    Василий Банников
    • 9 ответов
    • 0 вопросов
  • CityCat4
    CityCat4
    • 8 ответов
    • 0 вопросов
  • rPman
    • 5 ответов
    • 0 вопросов
  • neuotq
    Александр Талалаев
    • 4 ответа
    • 0 вопросов
  • Drno
    • 4 ответа
    • 0 вопросов
  • © Habr
  • О сервисе
  • Правила
  • Обратная связь
  • Блог

Войдите на сайт

Чтобы задать вопрос и получить на него квалифицированный ответ.
Войти через центр авторизации