Задать вопрос
  • Админка на сайте - отдельный раздел сайта (об url которого никто не знает) или просто дополнительные возможности у пользователя с админскими правами?

    Adamos
    @Adamos
    Раздел, про который все знают, но доступ только у пользователя с админскими правами.
    И дополнительные кнопочки на страницах для пользователей с правами редактирования (админ, модератор, автор материала).
    Ответ написан
    Комментировать
  • При каких случай не записываются kernel логи?

    Adamos
    @Adamos
    При случай некуда, например.
    Ответ написан
    Комментировать
  • В неверной кодировке принимается ответ из робокассы?

    Adamos
    @Adamos
    Робокасса позволяет вам прилепить к заказу произвольные поля и возвращает их значение.
    Какой идиот надоумил вас заполнять эти чисто служебные поля - кириллицей?
    Вот он пусть и тренируется в перекодировках - сам сделал грабли, сам наступил...
    Ответ написан
    Комментировать
  • На сколько трудно будет написать программу (стационарную на Java, серверную на php, js, mysql) 1C предприятие и 1С бухгалтерия для небольшой фирмы?

    Adamos
    @Adamos
    Не нужно использовать весь функционал, даже наоборот добавить тот, который нужен под данный тип деятельности!

    Попробую угадать: у вас возникло желание внедрить небольшую самописную ERP/CRM/(другие модные аббревиатуры), и вы почему-то решили начать этот процесс с выкидывания 1С и написания велосипедов.
    Хотя логичнее писать и внедрять новую систему, пополняя ее данные выгрузками из 1С, и отказываться от последней только тогда, когда (и если) ее ненужность действительно станет очевидной. Скорее всего - никогда...
    Ответ написан
    Комментировать
  • Как спроектировать базу данных?

    Adamos
    @Adamos
    Или все комментарии к определенному кондиционеру

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

    Adamos
    @Adamos
    У вас в "непонятных надписях" строчка JSON, в которой сообщается об успешном оформлении заказа и выдается ссылка, по которой нужно перейти дальше. Очевидно, где-то в компоненте или шаблоне прозевали этот шаг и тупо выводят вам эту строчку вместо отработки действия по ней.
    Обратитесь к тем перцам, у которых купили шаблон - скорее всего, их косяк.
    Ответ написан
    Комментировать
  • Диструбутив на такое железе Linux?

    Adamos
    @Adamos
    Во-первых, ни один современный браузер на системе с 1 Гб памяти "нормально" работать уже не будет, независимо от ОС.
    Во-вторых, ваши хотелки вообще со старым железом несовместимы.
    В-третьих, Линукс и Скайп - вещи весьма плохо совместимые, M$ постаралась.

    Поэтому - увы, вам нужно менять либо задачи, либо железо.

    P.S. У меня на подобных машинках под Xubuntu работают, например, сотрудницы, которым для работы достаточно браузера, причем без всяких там тяжелых страниц - но такая работа отнюдь не для привыкших к тому, чтобы все летало.
    Ответ написан
    Комментировать
  • На чём писать сайт для строительной фирмы? Нужно: форма для предварительного расчёта дома (много параметров), печать документов, регистрация и т.д?

    Adamos
    @Adamos
    Нужно реализовать много всяких вещей, таких как: регистрация и права доступа к страницам в зависимости от группы пользователя

    Штатная функциональность любой CMS или популярного РНР-фреймворка

    подготовка документов к печати (например, коммерческое предложение, тз и так далее)

    Достаточно просто пишется с использованием mPDF

    но, самое важное это "предварительный расчёт"

    А вот это задача, перпендикулярная всему прочему сайту. Потому что всему этому расчету желательно быть на одной странице, и от прочего сайта эта страница зависит минимально. Как и он от нее. Javascript сейчас позволяет делать на странице все, что угодно - просто нужно это уметь.

    не знаем как поступить: есть МНОГО параметров, и нужно сделать так, чтобы при выборе одного, в зависимости от условий, менялись СРАЗУ ЖЕ другие

    Например, сделать расчет в виде wizard - окошек, в которых можно сделать выбор, от которого зависит, какое окошко откроется следующим (и можно вернуться, если передумал). Окошки все на одной странице (в каждый конкретный момент видно только текущее), управляются javascript-ом.
    Ответ написан
    Комментировать
  • Редактирование PDF с помощью JavaScript или PHP?

    Adamos
    @Adamos
    Аналогичная задача - на готовый диплом в PDF лепятся данные награжденного и факсимиле.
    $css = "
    div.abs {
        position: absolute;
        line-height: " . $font_size * 3 . "mm;
        text-align: center;
    }
    div.main {
        top: " . $prizer_box[1] . "mm;
        left: " . $prizer_box[0] . "mm;
        width: " . $prizer_box[2] . "mm;
    }
    div.year {
        top: " . $year_box[1] . "mm;
        left: " . $year_box[0] . "mm;
        width: " . $year_box[2] . "mm;
    }
    p.main {
        font-size: " . $font_size . "mm;
        font-family: romul;
        text-transform: uppercase;
    }
    p.user {
        font-size: " . $font_size * 2 . "mm;
        line-height: " . $font_size * 3 . "mm;
        font-family: heinrichscript;
        margin: 0 0 " . $font_size * 3 . "mm 0;
    }
    ";
    
    $html_text = "<div class='abs main'>";
    $html_text .= "<p class='main'>Награждается</p>";
    $html_text .= "<p class='user'>$name<br />$surname</p>";
    $html_text .= "<p class='main'>$award_title<br />$event_title</p>";
    $html_text .= "</div>";
    $html_text .= "<div class='abs year'><p class='main'>$year</p></div>";
    
    $image_path = $_SERVER['DOCUMENT_ROOT'] . '/images/diploma/';
    require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/vendor/mpdf60/mpdf.php';
    $mpdf = new mPDF();
    $mpdf->img_dpi = 300;
    $mpdf->SetImportUse();
    $mpdf->SetSourceFile($image_path . 'Diplom_' . $diploma . '.pdf');
    $tmpl = $mpdf->ImportPage();
    $mpdf->UseTemplate($tmpl);
    $mpdf->charset_in = 'cp1251';
    $mpdf->WriteHTML($css, 1);
    $mpdf->WriteHTML($html_text, 2);
    $mpdf->facsimile = file_get_contents($image_path . 'facsimile_600.png');
    $mpdf->Image('var: facsimile', $fac_x, $fac_y, '50%', '50%');
    $mpdf->Output('diploma.pdf', 'I');
    Ответ написан
    1 комментарий
  • Есть ли бесплатный принтер pdf с поддержкой ssl?

    Adamos
    @Adamos
    www.pdfforge.org/pdfcreator - заявлено, что умеет нужные вам плюшки.
    Сам не пробовал.
    Ответ написан
    Комментировать
  • С++ или backend?

    Adamos
    @Adamos
    Бэкенд на PHP. Rлиент для PC/iOS/Android, дергающий API этого бэкенда - на "крестах".
    Почему "или"?!
    Ответ написан
  • Как переписать данный кусок кода, написанного на Python, на C++?

    Adamos
    @Adamos
    vector<vector<int>> Precalculate(int n, int  k, vector<int> &s) {
      int d = 0;
      vector<vector<int>> a(n, vector<int> (1, 1));
      int totalSum = 1;
      int maxValue = k;
      while (d < 9 * n && totalSum <= maxValue) {
        d++;
        vector <int> ad(n, 0);
        int last = s[n - 1];
        int tmp = 0;
        if (last - d >= 0) {
          tmp++;
        }
        if (last + d <= 9) {
          tmp++;
        }
        cout << tmp << endl;
        ad[n - 1] = tmp;
        a.push_back(ad);
        for (int j = n - 2; j > -1; j--) {
          int sum = 0;
          for (int m = 0; m < 10; m++) {
            tmp = d - abs(s[j] - m);
            if (tmp >= 0) {
              sum += a[tmp][j + 1];
            }
          }
          ad[j] = sum;
        }
        totalSum += ad[0];
      }
      return a;
    }

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

    Adamos
    @Adamos
    Учить английский параллельно? Конечно.
    Учить английский, читая учебник по незнакомому языку программирования? Классическое "за двумя зайцами".
    Так вы не выучите ни английский, ни целевой язык.

    Освойтесь с языком, хотя бы с азами, по русскому учебнику.
    Начните писать. У вас появятся вопросы.
    Гуглите, стараясь составить вопрос на английском и пытаясь понять, что по этому поводу говорят на английском же SO, например. Вот и будет вам практика.
    Ответ написан
  • Как ускорить работу сайта (алгоритм расчета ближайшего цвета по известной палитре цветов)?

    Adamos
    @Adamos
    В приведенной вами в комментариях функции явно не хватает двух вещей:
    1. Кэширования, чтобы не повторять расчет для того цвета, который уже был обсчитан. Предвижу рост скорости на пару порядков.
    2. Понимания того, что для нахождения ОДНОГО оптимального значения на хрен не нужно собирать целый массив и сортировать его. Вы никогда не видели алгоритм поиска наименьшего значения в массиве?
    Ответ написан
  • Быть узкоспециализированным или разносторонним? Что лучше?

    Adamos
    @Adamos
    "Не могу определиться, в каком спорте стать чемпионом - или сразу замахиваться на триатлон. Так напряженно об этом думаю, что даже зарядку сделать некогда!"
    Ответ написан
    Комментировать
  • Как выбрать элемент из массива с разным весом вероятности?

    Adamos
    @Adamos
    $sum_weight = 0;
    foreach($values as $value) {
      $sum_weight += $value['procent'];
    }
    $rest = rand(0, 100500) / 100500 * $sum_weight;
    $result = false;
    foreach($values as $value) {
      if($value['procent'] >= $rest) {
        $result = $value['value'];
        break;
      }
      $rest -= $value['procent'];
    }
    Ответ написан
    Комментировать
  • Какой подход к компиляции кода считается самым лучшим? Через дефайны, передаваемые в билдовый скрипт, создание нескольких бинарников и т.д.?

    Adamos
    @Adamos
    4. Вынос всех функций, зависящих от железа, в динамические библиотеки.
    При старте определяется железо и подключаются нужные либы.
    Особенно актуально, если железо включено не постоянно или может измениться по ходу работы.
    Ответ написан
    Комментировать
  • Как недостатки блокчейн повлияют на эффективность деятельности предприятий?

    Adamos
    @Adamos
    Тоже пытался понять, что за шум, и понял так.
    Блокчейн - технология, позволяющая гарантировать, что:
    1. вот этот кусок данных здесь появился не просто так
    2. он и сейчас точно такой, как в момент появления.
    Это, собственно, единственное достоинство технологии.
    Дальше к нему примешивают:
    3. возможность хранить данные где попало - мы же можем гарантировать, что они не были изменены. Однако тут же встает вопрос - а кто и зачем будет этим заниматься? Криптовалюты дают ответ на этот вопрос. Распределенные системы внутри банка или между банками - тоже, при наличии у самих банков такого интереса.
    Сажать на это целую отрасль - а ради чего, собственно? Никаких революционных решений блокчейн не предполагает, это чистое паразитирование на модной теме.

    Проблемы конфиденциальности и прочие возникающие у новичков вопросы, на самом деле, не критичны - хранящиеся в блокчейне данные могут быть сколь угодно открытыми, но если эти данные зашифрованы и открываются только ключом, разница с БД, доступ к которой требует ровно того же ключа-пароля, минимальна.
    Изменение данных в блокчейне просто предполагает добавление новой, изменяющей записи. То, что сохраняется и неверная - ну, Википедии это не мешает, например.
    Картельный сговор крупных игроков, имхо, менее вероятен, чем очередной взбрык бешеного принтера. Да и примитивно это - им-то как раз в последнюю очередь нужно ломать работающую систему.
    Мертвые ветви, конечно, должны отсекаться и уничтожаться. Но ведь и данным необязательно быть непрерывными цепочками. Создаем узловые блоки доверия - и можем "ронять" все, что было между ними. Или дерево из цепочек, растущих независимо друг от друга.
    Вообще, многие проблемы надуманы из-за непонимания места блокчейна в системе. Это глубокий уровень, хранение данных. Над ним может быть чертова уйма надстроек, так же, как над БД. Главное - сформулировать требования. "Спаси нас, блокчейн, от лукавого" - это не требование, если что ;)
    Ответ написан
    2 комментария