• Как получить из базы 1C сальдо?

    Fragster
    @Fragster
    помогло? отметь решением!
    Если 1с на базе платформы 8.1 и позднее, то разумнее всего сделать в 1с веб сервис (SOAP или для 8.3 можно HTTP) и отдавать им данные. в php запрашивать с помощью SoapClient или curl соответственно. Это требует небольшой модификации конфигурации (для платформы 8.3.8+ можно сделать в виде "расширения") и некоторых настроек на сервере.

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

    Fragster
    @Fragster
    помогло? отметь решением!
    Комментировать
  • Как заставить грёбаный regexp работать правильно?

    Fragster
    @Fragster
    помогло? отметь решением!
    вероятно, нужно добавить модификатор multiline, и, возможно, utf-8 php.net/manual/ru/reference.pcre.pattern.modifiers.php
    Ответ написан
  • Как получить значение user?

    Fragster
    @Fragster
    помогло? отметь решением!
    а что вы используете в качестве ORM? в sequelize, например, есть docs.sequelizejs.com/en/v3/api/model/#findorcreate...
    Ответ написан
  • Как из node.js прослушивать базу на предмет новых записей?

    Fragster
    @Fragster
    помогло? отметь решением!
    Можно подвесить триггер на вставку, который будет дергать sys_exec, а sys_exec будет вызывать curl по нужному адресу, а на той стороне хоть php, хоть node, без разницы.
    Ответ написан
    Комментировать
  • Как сделать предпросмотр изображений при загрузке с input type=[file]?

    Fragster
    @Fragster
    помогло? отметь решением!
    Комментировать
  • Как искать номер телефона в mysql?

    Fragster
    @Fragster
    помогло? отметь решением!
    дополнительно хранить в "нормализованном" виде, искать по where этополе like %фрагмент%
    фрагмент предварительно тоже "нормализовать"
    Ответ написан
    3 комментария
  • Как добавить новую строку в базу на определенную позицию?

    Fragster
    @Fragster
    помогло? отметь решением!
    Вопрос некорректен. Вероятно стоит добавить в конец и отсортировать по нужному признаку при выводе.
    Ответ написан
    Комментировать
  • Таблица выводится в строку?

    Fragster
    @Fragster
    помогло? отметь решением!
    пренести <tr> и </tr> внутрь foreach($row...), вокруг foreach($value...)
    Ответ написан
    1 комментарий
  • Ajax-запросы не работает почему?

    Fragster
    @Fragster
    помогло? отметь решением!
    код в принципе с синтаксическими ошибками. Например неправильно записаны многострочные строки, перепутаны открывающие и закрывающие скобки.
    В консоли пишет
    SyntaxError: unterminated string literal[Подробнее]
    Ответ написан
    Комментировать
  • Как отсортировать массив так?

    Fragster
    @Fragster
    помогло? отметь решением!
    применить в $b php.net/manual/ru/function.usort.php , в функции проверять наличие элементов в массиве $a php.net/manual/ru/function.array-search.php и сравнивать их индексы. если какой-то элемент не найден - то он всегда больше/меньше для сдвигания в какой-либо конец результата (в зависимости от потребностей), если оба не найдены, то они равны.
    Ответ написан
    Комментировать
  • FetchAll в чем может быть проблема?

    Fragster
    @Fragster
    помогло? отметь решением!
    $row - это не строка, а массив строк
    Ответ написан
    Комментировать
  • Фрилансер - по договору подряда или как ИП?

    Fragster
    @Fragster
    помогло? отметь решением!
    Договор на "ежемесячные ххх + 3333" рублей намного выгоднее и для вас и для работодателя. Во первых, если у вас договор на ххх рублей, то получите вы ххх * 0.87. А работодатель еще заплатит 26% ЕСН, соответственно, для случая 100к, полученных вами от работодателя, вы можете как ИП заключить с ним договор на (100/0.87)*1.26 = 144к рублей.
    Потом вы заплатите 6%, останется примерно 135к, и из этого надо заплатить ваши "3333" рубля, итого получается более 30к ваша выгода.
    Ответ написан
    2 комментария
  • Как отсортировать строки в mysql по среднему значению?

    Fragster
    @Fragster
    помогло? отметь решением!
    select 
      table.col,  
      subquery.avg,
      ABS(table.col - subquery.avg) as diff
    from table,
      (select AVG(table.col) as avg from table) as subquery
    order by
      diff
    Ответ написан
    Комментировать
  • Как изменить массив?

    Fragster
    @Fragster
    помогло? отметь решением!
    Ответ написан
    Комментировать
  • В чем может быть причина, почему боте Telegram больше 50ти подписчиков не отправляет?

    Fragster
    @Fragster
    помогло? отметь решением!
    вроде как после первой отправки телеграм возвращает что-то типа GUIDа, который можно использовать при повторной отправке.
    А вообще меня сервера телеграма банили за флуд (на сутки) при большом количестве одинаковых запросов, правда это был не бот, а server-side клиент.
    Ответ написан
    Комментировать
  • Как построчно считать файл?

    Fragster
    @Fragster
    помогло? отметь решением!
    $in = fopen("a.txt", "r");
    $out = fopen("p.txt", "w+");
    
    $start = microtime(true);
    
    while(($line = fgets($in)) !== false) {
        $converted = iconv('UTF-16LE', 'UTF-8', $line);
        fwrite($out, $converted);
    }
    
    $elapsed = microtime(true) - $start;
    echo "<br>Iconv took $elapsed seconds\r\n";
    Ответ написан
  • Как подсчитать кол-во определенных символов в строке, например ";"?

    Fragster
    @Fragster
    помогло? отметь решением!
    https://jsfiddle.net/8cvr0hjx/

    Поскольку сегодня пятница, то вспомнилась такая история:
    Сэр Эрнест Резерфорд, президент Королевской Академии и лауреат Нобелевской премии по физике, рассказывал следующую историю, служащую великолепным примером того, что не всегда просто дать единственно правильный ответ на вопрос.

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

    Экзаменационный вопрос гласил: «Объясните, каким образом можно измерить высоту здания с помощью барометра». Ответ студента был таким: «Нужно подняться с барометром на крышу здания, спустить барометр вниз на длинной веревке, а затем втянуть его обратно и измерить длину веревки, которая и покажет точную высоту здания».

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

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

    Заинтересовавшись, я попросил молодого человека приступить к ответу, не дожидаясь истечения отведенного срока. Новый ответ на вопрос гласил: «Поднимитесь с барометром на крышу и бросьте его вниз, замеряя время падения. Затем, используя формулу L = (a*t^2)/2, вычислите высоту здания».

    Тут я спросил моего коллегу, преподавателя, доволен ли он этим ответом. Тот, наконец, сдался, признав ответ удовлетворительным. Однако студент упоминал, что знает несколько ответов, и я попросил его открыть их нам.

    «Есть несколько способов измерить высоту здания с помощью барометра», начал студент. «Например, можно выйти на улицу в солнечный день и измерить высоту барометра и его тени, а также измерить длину тени здания. Затем, решив несложную пропорцию, определить высоту самого здания.»

    «Неплохо», сказал я. «Есть и другие способы?»

    «Да. Есть очень простой способ, который, уверен, вам понравится. Вы берете барометр в руки и поднимаетесь по лестнице, прикладывая барометр к стене и делая отметки. Сосчитав количество этих отметок и умножив его на размер барометра, вы получите высоту здания. Вполне очевидный метод.»

    «Если вы хотите более сложный способ», продолжал он, «то привяжите к барометру шнурок и, раскачивая его, как маятник, определите величину гравитации у основания здания и на его крыше. Из разницы между этими величинами, в принципе, можно вычислить высоту здания. В этом же случае, привязав к барометру шнурок, вы можете подняться в вашим маятником на крышу и, раскачивая его, вычислить высоту здания по периоду прецессии.»

    «Наконец», заключил он, «среди множества прочих способов решения проблемы лучшим, пожалуй, является такой: возьмите барометр с собой, найдите управляющего зданием и скажите ему: «Господин управляющий, у меня есть замечательный барометр. Он ваш, если вы скажете мне высоту этого здания».

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

    Студентом этим был Нильс Бор (1885–1962), датский физик, лауреат Нобелевской премии 1922 г.

    Вот возможные решения этой задачи, предложенные им:

    1. Измерить время падения барометра с вершины башни. Высота башни однозначно рассчитывается через время и ускорение свободного падения. Данное решение является наиболее традиционным и потому наименее интересным.
    2. С помощью барометра, находящегося на одном уровне с основанием башни, пустить солнечный зайчик в глаз наблюдателя, находящегося на ее вершине. Высота башни рассчитывается исходя из угла возвышения солнца над горизонтом, угла наклона барометра и расстояния от барометра до башни.
    3. Измерить время всплывания барометра со дна заполненной водой башни. Скорость всплывания барометра измерить в ближайшем бассейне или ведре. В случае, если барометр тяжелее воды, привязать к нему воздушный шарик.
    4. Положить барометр на башню. Измерить величину деформации сжатия башни. Высота башни находится через закон Гука.
    5. Насыпать кучу барометров такой же высоты, что и башня. Высота башни рассчитывается через диаметр основания кучи и коэффициент осыпания барометров, который можно вычислить, например, с помощью меньшей кучи.
    6. Закрепить барометр на вершине башни. Послать кого-нибудь наверх снять показания с барометра. Высота башни рассчитывается исходя из скорости передвижения посланного человека и времени его отсутствия.
    7. Натереть барометром шерсть на вершине и у основания башни. Измерить силу взаимного отталкивания вершины и основания. Она будет обратно пропорциональна высоте башни.
    8. Вывести башню и барометр в открытый космос. Установить их неподвижно друг относительно друга на фиксированном расстоянии. Измерить время падения барометра на башню. Высота башни находится через массу барометра, время падения, диаметр и плотность башни.
    9. Положить башню на землю. Перекатывать барометр от вершины к основанию, считая число оборотов. (Способ, ставший популярным в России под кодовым названием "имени 38 попугаев").
    10. Закопать башню в землю. Вынуть башню. Полученную яму заполнить барометрами. Зная диаметр башни и количество барометров, приходящееся на единицу объема, рассчитать высоту башни.
    11. Измерить вес барометра на поверхности и на дне ямы, полученной в предыдущем опыте. Разность значений однозначно определит высоту башни.
    12. Наклонить башню. Привязать к барометру длинную веревку и спустить его до поверхности земли. Рассчитать высоту башни по расстоянию от места касания барометром земли до башни и углу между башней и веревкой.
    13. Поставить башню на барометр, измерить величину деформации барометра. Для расчета высоты башни необходимо также знать ее массу и диаметр.
    14. Взять один атом барометра. Положить его на вершину башни. Измерить вероятность нахождения электронов данного атома у подножия башни. Она однозначно определит высоту башни.
    15. Продать барометр на рынке. На вырученные деньги купить бутылку виски, с помощью которой узнать у архитектора высоту башни.
    16. Нагреть воздух в башне до определенной температуры, предварительно ее загерметизировав. Проделать в башне дырочку, около которой закрепить на пружине барометр. Построить график зависимости натяжения пружины от времени. Проинтегрировать график и, зная диаметр отверстия, найти количество воздуха, вышедшее из башни вследствие теплового расширения. Эта величина будет прямо пропорциональна объему башни. Зная объем и диаметр башни, элементарно находим ее высоту.
    17. Измерить с помощью барометра высоту половины башни. Высоту башни вычислить, умножив полученное значение на 2.
    18. Привязать к барометру веревку длиной с башню. Использовать полученную конструкцию вместо маятника. Период колебаний этого маятника однозначно определит высоту башни.
    19. Выкачать из башни воздух. Закачать его туда снова в строго фиксированном количестве. Измерить барометром давление (!) внутри башни. Оно будет обратно пропорционально объему башни. А по объему высоту мы уже находили.
    20. Соединить башню и барометр в электрическую цепь сначала последовательно, а потом параллельно. Зная напряжение, сопротивление барометра, удельное сопротивление башни и измерив в обоих случаях силу тока, рассчитать высоту башни.
    21. Положить башню на две опоры. Посередине подвесить барометр. Высота (или в данном случае длина) башни определяется по величине изгиба, возникшего под действием веса барометра.
    22. Уравновесить башню и барометр на рычаге. Зная плотность и диаметр башни, плечи рычага и массу барометра, рассчитать высоту башни.
    23. Измерить разность потенциальных энергий барометра на вершине и у основания башни. Она будет прямо пропорциональна высоте башни.
    24. Посадить внутри башни дерево. Вынуть из корпуса барометра ненужные детали и использовать полученный сосуд для полива дерева. Когда дерево дорастет до вершины башни, спилить его и сжечь. По количеству выделившейся энергии определить высоту башни.
    25. Поместить барометр в произвольной точке пространства. Измерить расстояние между барометром и вершиной и между барометром и основанием башни, а также угол между направлением от барометра на вершину и основание. Высоту башни рассчитать по теореме косинусов.
    Ответ написан
    Комментировать
  • Как правильно из 1c выгружать изображения на сайт?

    Fragster
    @Fragster
    помогло? отметь решением!
    Зависит от конфигурации 1с. в общем случае нет пути :)
    пусть в 1с генерят картинки с именами файла = артикулам в csv и кладут рядом с файлом
    Ответ написан
    7 комментариев