Untitled

mail@pastecode.io avatar
unknown
php
a year ago
5.7 kB
5
Indexable
<!DOCTYPE html>
<html>
    <body>
        <form action="Seatwork5.php" method="post">
            <h2>Signup</h2>
            Name:
            <input type="text" name="lastname" placeholder="Last Name" required> 
            <input type="text" name="firstname" placeholder="First Name" required> 
            <input type="text" name="middlename" placeholder="Middle Name" required> <br>
            Email: <input type="text" name="email" placeholder="email@gmail.com" required> <br>
            Mobile No: <input type="text" name="mobile" placeholder="+63-915-123-4567" required> <br>
            Username: <input type="text" name="username" placeholder="Enter Username" required> <br>
            Password: <input type="password" name="password" placeholder="Enter Password" required> <br>
            Confirm Password: <input type="password" name="con_password" placeholder="Enter Password" required> <br>

            <input type="submit" name="signup" value="Sign up">
        </form>
        

        <form action="Seatwork5.php" method="post">
        <h2>Login</h2>
        Username: <input type="text" name="login_username" placeholder="Enter Username"> <br>
        Password: <input type="password" name="login_password" placeholder="Enter Password"> <br>
        <input type="submit" name="login" value="Login">
        </form>

        <?php if (isset($login_error)) {
            echo "<p>$login_error</p>";
        } elseif (isset($welcome_message)) {
            echo "<p>$welcome_message</p>";
        }
        ?>

        <?php
        session_start();

        // Signup Form Processing
        if ($_SERVER["REQUEST_METHOD"] === "POST") {
            if (isset($_POST["signup"])) {
                $errors = array();

                $firstname = $_POST["firstname"];
                $middlename = $_POST["middlename"];
                $lastname = $_POST["lastname"];
                $mobile = $_POST["mobile"];
                $email = $_POST["email"];
                $username = $_POST["username"];
                $password = $_POST["password"];
                $confirm_password = $_POST["con_password"];

                // Validate Lastname, Firstname, M.I.
                $pattern_name = "/^[A-Za-z\s\-]+$/";
                if (!preg_match($pattern_name, $lastname) || !preg_match($pattern_name, $firstname) || !preg_match($pattern_name, $middlename)) {
                    $errors[] = "Invalid name format. Please try again.";
                }

                // Validate Mobile Number
                $pattern_mobilenumber = "/\+63-\d{3}-\d{3}-\d{4}/";
                if (!preg_match($pattern_mobilenumber, $mobile)) {
                    $errors[] = "Invalid Mobile Number Format. Please try again.";
                }

                // Validate Email
                $pattern_email = "/^\S+@\S+\.\S+$/";
                if (!preg_match($pattern_email, $email)) {
                    $errors[] = "Invalid Email Format. Please try again.";
                }

                // Validate Username
                $pattern_username = "/^.{5,}$/";
                if (!preg_match($pattern_username, $username)) {
                    $errors[] = "Please enter at least 5 characters for the username. Please try again.";
                }

                // Validate Password
                $pattern_password = "/^(?=.*[a-zA-Z0-9])(?=.*[\p{P}\p{S}]).{8,}$/";
                if (!preg_match($pattern_password, $password)) {
                    $errors[] = "Please enter at least 8 characters with alphanumeric and special characters for the password. Please try again.";
                }

                // Validate confirm password
                if ($password !== $confirm_password) {
                    $errors[] = "Password does not match. Please try again.";
                }

                if (empty($errors)) {
                    $_SESSION["lastname"] = $lastname;
                    $_SESSION["firstname"] = $firstname;
                    $_SESSION["middlename"] = $middlename;
                    $_SESSION["email"] = $email;
                    $_SESSION["mobile"] = $mobile;
                    $_SESSION["username"] = $username;
                    $_SESSION["password"] = $password;

                    $signup_success = "Registration successful!!!";
                }
            }

            // Login Form Processing
            if (isset($_POST["login"])) {
                $login_username = $_POST["login_username"];
                $login_password = $_POST["login_password"];

                // Check if login credentials match the stored user details in session
                if (isset($_SESSION["username"]) && isset($_SESSION["password"]) && $login_username === $_SESSION["username"] && $login_password === $_SESSION["password"]) {
                    $welcome_message = "Welcome, Mr./Ms. " . $_SESSION["lastname"] . ".";
                } else {
                    $login_error = "Invalid username or password. Please try again.";
                }
            }
        }

        // Display errors or success messages
        if (isset($errors) && !empty($errors)) {
            echo "<h4>Error(s):</h4>";
            echo "<ul>";
            foreach ($errors as $error) {
                echo "<li>$error</li>";
            }
            echo "</ul>";
        } elseif (isset($signup_success)) {
            echo "<p>$signup_success</p>";
        }

        // Display login error or welcome message
        if (isset($login_error)) {
            echo "<p>$login_error</p>";
        } elseif (isset($welcome_message)) {
            echo "<p>$welcome_message</p>";
        }
        ?>
    </body>
</html>