File "subscribe.php"

Full Path: /home/ovanhxso/public_html/panel/admin/app/subscribe.php
File size: 3.3 KB
MIME-type: text/x-php
Charset: utf-8

<?php
session_start();
include '../../assets/constant/config.php';

try {
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    if (isset($_POST['submit'])) {
        try {
            // Normalize email input
            $email = trim(strtolower($_POST['email']));

            // Check if the email already exists
            $st = $conn->prepare("SELECT COUNT(*) FROM subscribe WHERE email = ?");
            $st->execute([$email]);
            $emailExists = $st->fetchColumn();

            if ($emailExists > 0) {
                // Email already exists
                $_SESSION['error'] = "This email is already subscribed!";
                ?>
                <script>
                    alert("This email is already subscribed!");
                    // Redirect to the appropriate page
                    <?php if (!empty($_POST['page'])) { ?>
                        window.location.href = "../../../<?php echo htmlspecialchars($_POST['page'], ENT_QUOTES, 'UTF-8'); ?>";
                    <?php } else { ?>
                        window.location.href = "../../../index.php";
                    <?php } ?>
                </script>
                <?php
            } else {
                // Insert the email into the database
                $stmt = $conn->prepare("INSERT INTO `subscribe`(`email`) VALUES (?)");
                $stmt->execute([$email]);

                $_SESSION['success'] = "Thank you for subscribing!";
                ?>
                <script>
                    alert("Thank you for subscribing!");
                    // Redirect to the appropriate page
                    <?php if (!empty($_POST['page'])) { ?>
                        window.location.href = "../../../<?php echo htmlspecialchars($_POST['page'], ENT_QUOTES, 'UTF-8'); ?>";
                    <?php } else { ?>
                        window.location.href = "../../../index.php";
                    <?php } ?>
                </script>
                <?php
            }
        } catch (Exception $e) {
            // Handle any potential errors
            $_SESSION['error'] = "An error occurred. Please try again.";
            ?>
            <script>
                alert("An error occurred. Please try again.");
                // Redirect to the appropriate page
                <?php if (!empty($_POST['page'])) { ?>
                    window.location.href = "../../../<?php echo htmlspecialchars($_POST['page'], ENT_QUOTES, 'UTF-8'); ?>";
                <?php } else { ?>
                    window.location.href = "../../../index.php";
                <?php } ?>
            </script>
            <?php
        }
    }
} catch (PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}

// Compress image function
function compressImage($source, $destination, $quality)
{
    $info = getimagesize($source);
    if ($info['mime'] == 'image/jpeg') {
        $image = imagecreatefromjpeg($source);
        imagejpeg($image, $destination, $quality);
    } elseif ($info['mime'] == 'image/png') {
        $image = imagecreatefrompng($source);
        imagepng($image, $destination, round(9 - ($quality / 10))); // PNG quality ranges from 0 to 9
    }
}
?>