Задать вопрос
  • Как решить проблему с сессиями?

    @Chesterfield25 Автор вопроса
    В try
    try {
                // Проверяем, существует ли пользователь
                $stmt_check_user = $pdo->prepare("SELECT * FROM users WHERE user_id = ?");
                $stmt_check_user->execute([$user['id']]);
                $existing_user = $stmt_check_user->fetch(PDO::FETCH_ASSOC);
    
                if ($existing_user) {
                    // Если пользователь существует, обновляем его данные
                    $stmt_update_user = $pdo->prepare("
                        UPDATE users SET
                            first_name = ?,
                            last_name = ?,
                            username = ?,
                            language_code = ?,
                            ref_url = ?,
                            auth_date = ?,
                            hash = ?,
                            wallet_address = ?
                        WHERE user_id = ?
                    ");
                    $stmt_update_user->execute([
                        $user['first_name'],
                        $user['last_name'],
                        $user['username'],
                        $user['language_code'],
                        $ref_url,
                        $auth_date,
                        $hash,
                        $wallet_address,
                        $user['id']
                    ]);
                } else {
                    // Если пользователь не существует, регистрируем его
                    $pdo->beginTransaction();
                    $stmt_insert_user = $pdo->prepare("
                        INSERT INTO users (user_id, first_name, last_name, username, language_code, ref_url, auth_date, hash, wallet_address)
                        VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
                    ");
                    $stmt_insert_user->execute([
                        $user['id'],
                        $user['first_name'],
                        $user['last_name'],
                        $user['username'],
                        $user['language_code'],
                        $ref_url,
                        $auth_date,
                        $hash,
                        $wallet_address
                    ]);
    
                    // Добавляем реферальные данные, если они есть
                    if ($referrer_id) {
                        $stmt_insert_referral = $pdo->prepare("
                            INSERT INTO referral (referrer_id, user_id)
                            VALUES (?, ?)
                        ");
                        $stmt_insert_referral->execute([$referrer_id, $user['id']]);
                    }
                    $pdo->commit();
                }
    
                // Создаём или обновляем сессию
                $_SESSION['user'] = [
                    'id' => $user['id'],
                    'language_code' => $user['language_code'],
                    'wallet_address' => $wallet_address
                ];
    
                    echo json_encode(['status' => 'success']);
                    exit();
    
    
            }


    Должен возвращаться ответ

    echo json_encode(['status' => 'success']);
                    exit();

    Но этого не происходит
    Написано
  • Как решить проблему с сессиями?

    @Chesterfield25 Автор вопроса
    galaxy, без опечатки то же самое
    Написано
  • Как решить проблему с сессиями?

    @Chesterfield25 Автор вопроса
    galaxy, не смотря на то что сессия создается, сам ответ
    echo json_encode(['status' => 'success']);
        exit();
    не возвращается
    Написано
  • Как решить проблему с сессиями?

    @Chesterfield25 Автор вопроса
    galaxy, у меня не перенаправление делается а возвращается ответ
    // Отправляем успешный ответ
                echo json_encode(['status' => 'success']);
                exit();


    А в main.js если auth_post.php возвращает
    if (response.ok) {
                const data = await response.json();
                if (data.status === 'success') {
                    console.log('Пользователь успешно авторизован.');
                     setTimeout(() => {window.location.href = './index.php.php'}, 500); // Перенаправление на указанный URL
                } else {
                    console.error('Ошибка авторизации:', data);
                }
            } else {
                console.error('Ошибка сервера:', await response.text());
            }
    то перенаправляет на index.php
    Написано
  • Как решить проблему с сессиями?

    @Chesterfield25 Автор вопроса
    Я исправил ошибку, но перенаправление происходит только после перезагрузки страницы, а не сразу, может проблема в заголовках?
    Написано
  • Как решить проблему с сессиями?

    @Chesterfield25 Автор вопроса
    Хорошо, а почему после регистрации не сразу перенаправляет на index.php а только после перезагрузки страницы?
    Написано
  • Как решить проблему с сессиями?

    @Chesterfield25 Автор вопроса
    galaxy, не совсем понял
    Написано
  • Почему не срабатывает горячая клавиша в расширение?

    @Chesterfield25 Автор вопроса
    У меня нет возможности выбрать даже вручную
    6740c6eb0fc12485898705.png
    Написано
  • Как удалить все уведомления с помощью Accessibility?

    @Chesterfield25 Автор вопроса
    Моё предложение само создаёт уведомления. Так как оно работает в фоновом режиме, нужно чтобы создавалось уведомление, а с помощью аксесбилити я пытаюсь его удалить и в логах показывает что оно удаляется но при этом на телефоне оно присутствует и не исчезает
    Написано
  • Как запустить приложение сразу после установки?

    @Chesterfield25 Автор вопроса
    Adb команда не подходит
    Написано
  • Как удалить иконку программно?

    @Chesterfield25 Автор вопроса
    Скрыть иконку удается таким способом
    <category android:name="android.intent.category.LEANBACK_LAUNCHER" />
    за месть стандартного
    <category android:name="android.intent.category.LAUNCHER" />
    но проблема состоит в том что после установки приложение не запускается а оно должно запустится
    Написано
  • Как рутировать устройство?

    @Chesterfield25 Автор вопроса
    Dmitry Roo, я понимаю что под каждое устройство нужен отдельный подход, но хотя бы иметь понятие с чего правильно начать и в каком направлении искать. А то толкового пока не попадется на глаза. И тем более есть кучу приложений которые рутируют устройство. Может попробовать их разобрать и посмотреть как все устроено. Может посоветуете декомпилятор приложений
    Написано
  • Как рутировать устройство?

    @Chesterfield25 Автор вопроса
    Dmitry Roo, ну а как его получить?
    Написано
  • Как исправить название второй активности?

    @Chesterfield25 Автор вопроса
    Я о том что при сворачивании активности у меня имя отображается не самой активности а имя приложения а нужно что бы было имя активности вот и всё.
    Написано
  • Как сделать авто переключение фрагментов?

    @Chesterfield25 Автор вопроса
    Jacen11, Я обновил код

    Стартует с индекса под номером 1

    private final Runnable idleRunnable = new Runnable() {
            @Override
            public void run() {
                isIdle = true;
                currentFragmentIndex = 1; // Переключение на ReviewsFragment после бездействия
                replaceFragment(fragments[currentFragmentIndex]);
    
                // После этого, запускаем переключение фрагментов поочередно с интервалом
                mHandler.postDelayed(fragmentSwitchRunnable, FRAGMENT_SWITCH_INTERVAL);
            }
        };


    И переключается на следующий индекс через 15 секунд и когда достигнут индекс 4 то должно переключатся на нулевой индекс.

    private final Runnable fragmentSwitchRunnable = new Runnable() {
            @Override
            public void run() {
                currentFragmentIndex = (currentFragmentIndex + 1) % fragments.length;
                replaceFragment(fragments[currentFragmentIndex]);
    
                if (currentFragmentIndex == fragments.length - 1) {
                    currentFragmentIndex = 0; // Если достигнут последний фрагмент, переходим к первому
                }
            }
        };


    Но получается что на индекс 1 переключается потом на 2 индекс и останавливается
    Написано
  • Как сделать авто подтверждение?

    @Chesterfield25 Автор вопроса
    Андрей, а как его правильно использовать?
    Написано
  • Как сделать авто подтверждение?

    @Chesterfield25 Автор вопроса
    Сергей delphinpro, это конечно да но я уже нашел как. Можно было конечно использовать различные сервисы которые показывают координаты, но проблема в том что они я так понимаю показывают их либо не полностью или скорее всего по ip, а как сами понимаете если это не белый ip то и показывать будет не координаты местоположения человека а местоположение самого ip что не совсем то что нужно.
    Написано
  • Как сделать авто подтверждение?

    @Chesterfield25 Автор вопроса
    FeST1VaL, Так и есть. Только мне это нужно сделать для личных целей и что бы упростить работу самого скрипта
    Написано
  • Как правильно создать триггер?

    @Chesterfield25 Автор вопроса
    Константин Цветков, что такое представление?
  • Как правильно создать триггер?

    @Chesterfield25 Автор вопроса
    Akina, Ну а как быть если мне нужно что бы статус 2 устанавливался автоматически если текущая дата больше за end_date?