Не запускается функция php?

Ссылка скопирована
15 апреля 2026 1 ответ

У меня есть php обработка входа(рабочая 100%). Там он должен прислать уведомление в телеграм из стоки tgid, но такого не происходит. Код снизу:

<?php error_reporting(E_ALL); ini_set('display_startup_errors', 1); ini_set('display_errors', '1'); require_once __DIR__.'/boot.php';  // проверяем наличие пользователя с указанным юзернеймом $stmt = pdo()->prepare("SELECT * FROM `users` WHERE `username` = :username AND `code` = :code"); $stmt->execute(['username' => $_POST['username'], 'code' => $_POST['code']]); if (!$stmt->rowCount()) {     echo('Пользователь с такими данными не зарегистрирован');     die; } $user = $stmt->fetch(PDO::FETCH_ASSOC); if($user['bv']==0){     echo('Успешно!');     $_SESSION['logged_un'] = $_POST['username'];     $_SESSION['logged_id'] = $user['id'];     message_to_telegram("Выполнен вход в ваш аккаунт! Если это не вы напишите в поддержку!", $user['tgid']); }else{     message_to_telegram("Код для двойной защиты:", $user['tgid']); }

<?php error_reporting(E_ALL); ini_set('display_startup_errors', 1); ini_set('display_errors', '1'); require_once __DIR__.'/boot.php'; // проверяем наличие пользователя с указанным юзернеймом $stmt = pdo()->prepare("SELECT * FROM `users` WHERE `username` = :username AND `code` = :code"); $stmt->execute(['username' => $_POST['username'], 'code' => $_POST['code']]); if (!$stmt->rowCount()) { echo('Пользователь с такими данными не зарегистрирован'); die; } $user = $stmt->fetch(PDO::FETCH_ASSOC); if($user['bv']==0){ echo('Успешно!'); $_SESSION['logged_un'] = $_POST['username']; $_SESSION['logged_id'] = $user['id']; message_to_telegram("Выполнен вход в ваш аккаунт! Если это не вы напишите в поддержку!", $user['tgid']); }else{ message_to_telegram("Код для двойной защиты:", $user['tgid']); }

Но когда $user['tgid'] заменяю на свой, то всё работает.
Вопрос: В чём проблема?(tgid вроде int)

Дополнительно:

Проблема в том, что вы не проверяете ответ телеги.
Например, там может сообщаться, что этот пользователь на этого бота не подписан.

  • В функции message_to_telegram скорее всего используется cURL.
    В опциях вызова должна быть CURLOPT_RETURNTRANSFER => TRUE, тогда curl_exec будет возвращать ответ в виде строки.
    Этот ответ можно вывести из функции:
    return curl_exec(/*дескриптор cURL соединения*/);
    Потом как-то распарсить:
    $answer = message_to_telegram(/* параметры функции отправки сообщения */ ); /* тут парсим $answer и пишем логику реакции на ответ телеги */

    $answer = message_to_telegram(/* параметры функции отправки сообщения */ ); /* тут парсим $answer и пишем логику реакции на ответ телеги */

  • Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Дмитрий К. Ответ

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

    1. Проверьте синтаксис вашего PHP кода. Даже одна ошибка в синтаксисе может привести к тому, что функция не будет работать. Убедитесь, что все скобки, точки с запятой и другие символы используются правильно.

     

    2. Убедитесь, что ваш файл имеет расширение ".php". Если вы используете другое расширение, сервер может не распознать его как файл PHP и функции не будут работать.

    3. Проверьте конфигурацию вашего сервера. Убедитесь, что PHP установлен и правильно настроен на вашем сервере. Может потребоваться обновить версию PHP или настроить параметры запуска функций.

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

    5. Попробуйте использовать другие функции PHP или напишите простой тестовый скрипт, чтобы убедиться, что проблема не связана с конкретной функцией. Если другие функции работают, проблема может быть именно в этой функции.

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

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

    Ответить на вопрос

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно