• Функция для телеграм бота на python?

    @twistfire92
    Вам надо познакомиться с register_next_step_handler, это упростит немного жизнь в вашей задаче. Если я правильно понимаю, то загвоздка в том, что обе справки требуют ИНН и вам надо как-то запомнить для какой именно справки сейчас ожидается ИНН от пользователя. register_next_step_handler вам поможет. Ищите примеры, пробуйте. Если что-то не будет получаться - скидывайте код сюда, будем смотреть.

    Так же советую изучить работу с Inline кнопками, с ними больше возможностей откроется.
    Ответ написан
  • Как сделать некоторые функции в telegrabotapi Python?

    @Vindicar
    1. "with con:" закроет соединение по выходу из блока with.
    2. Зачем вообще хранить справки, если вы их генерируете на лету? Или они будут как-то ещё обрабатываться?
    3. Я бы посоветовал вынести всё, что касается работы с базой и генерации PDF в отдельный класс, а боту оставить ботово, т.е. интеграцию с телегой. Так и отлаживать проще, и код поддерживать.
    Ответ написан
  • Как сделать исключение индекса из функции shuffle?

    sslion
    @sslion
    Формируй массив вопросов примерно в таком виде, и будет все намного удобнее
    $questions = [
                    [
                        'question' => 'Что такое буфер обмена?',
                        'answers' => [
                            '169' => 'Область в памяти',
                            '170' => 'Специальная папка в файловой системе',
                            '171' => 'Специальный файл',
                            '172' => 'Магнитный носитель'
                        ]
                    ],
                    [
                        'question' => 'Из каких частей состоит обозначение файла в операционной системе Windows?',
                        'answers' => [
                            '177' => 'из трех частей: имени, расширения и доменного имени',
                            '178' => 'из двух частей: имени и доменного имени',
                            '179' => 'из двух частей: имени и расширения',
                            '180' => 'из одной части: имени'
                        ]
                    ]
                ];
    Ответ написан
  • Как сделать исключение индекса из функции shuffle?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега PHP
    Нельзя, но можно хранить данные в нормальной структуре и тогда shuffle можно будет запускать безо всяких проблем.
    $questions = [
      [
        'id' => 42,
        'text' => 'Что такое буфер обмена?',
        'answers' => [
          ['id' => 169, 'text' => 'Область в памяти'],
          ['id' => 170, 'text' => 'Специальная папка в файловой системе'],
          ['id' => 171, 'text' => 'Специальный файл'],
          ['id' => 172, 'text' => 'Магнитный носитель'],
        ],
      ],
    ]
    Ответ написан
  • Ошибка Notice: Undefined variable: как исправить?

    XXXXPro
    @XXXXPro
    Fullstack Web developer
    Такие notices выдаются при обращении к необъявленным переменным. Например, $count_questions определяется только в том случае, если $_GET['test'] не пустая и удалось найти сам тест. Чтобы этого не было, нужно где-то в начале определять начальное значение, например, $count_questions = 0 перед проверкой if (!isset($_GET['test'])). То же самое и с остальными переменными: либо всё время проверять на isset, либо задавать начальные значения.
    Ответ написан
  • Поможете с функцией PHP?

    @v__V__v
    Разработчик
    По поводу самой ошибки вам уже подсказали, хочу только подчеркнуть один момент: передавая внутрь функции значения глобальных и суперглобальных переменных в явном виде, вы поступаете правильно. Делайте так всегда и игнорируйте тех, кто говорит, что это - ошибка, т.к. они доступны везде. Это сэкономит вам кучу времени и нервов. И тем, кто будет поддерживать ваш код после вас тоже.
    Ответ написан
  • Поможете с функцией PHP?

    ssenj
    @ssenj
    HTML, CSS, PHP, WordPress, Bitrix
    В ошибке четко написано `Невозможно повторно назначить автоглобальную переменную _POST`
    При объявлении функции переименуй параметр $_POST, например так:
    function get_test_data_result($test_all_data, $result, $post) { ... }

    Либо, как советуют выше, убери его из параметров. Глобальные переменные доступны везде и внутри функции тоже.
    Ответ написан
  • Поможете с функцией PHP?

    @galaxy
    Суперглобальные переменные ($_GET, $_POST и т.д.) потому так и называются, что доступны всегда и из любого места.
    Вы назвали параметр своей функции _POST и таким образом пытаетесь перезатереть суперглобальную переменную. Так делать нельзя.
    Все будет работать, если убрать _POST из параметров (и не передавать его при вызове - он и так отовсюду доступен).
    Ответ написан