⬅ Back to Projects

Registration with Image Upload — Source Code

registration.php

<?php
$conn = mysqli_connect('localhost', 'root', '', 'myapp');
$msg = '';

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $name = $_POST['name'];
    $email = $_POST['email'];
    $password = $_POST['password'];
    $image = $_FILES['image']['name'];
    $tmp = $_FILES['image']['tmp_name'];

    if ($name && $email && $password && $image) {
        if (!is_dir('uploads')) {
            mkdir('uploads');
        }
        $path = 'uploads/' . time() . '_' . $image;
        move_uploaded_file($tmp, $path);

        $q = "INSERT INTO image_table (name,email,password,profile_image) VALUES ('$name','$email','$password','$path')";
        if (mysqli_query($conn, $q)) {
            header('Location: login.php');
            exit;
        } else {
            $msg = 'Error saving data';
        }
    } else {
        $msg = 'Please fill all fields';
    }
}
?>
<!DOCTYPE html>
<html>
<head><title>Register</title></head>
<body>
<h2>Register</h2>
<form method="post" enctype="multipart/form-data">
Name: <input type="text" name="name"><br><br>
Email: <input type="email" name="email"><br><br>
Password: <input type="password" name="password"><br><br>
Profile Image: <input type="file" name="image"><br><br>
<input type="submit" value="Register">
</form>
<p style="color:red;"><?php echo $msg; ?></p>
<a href="login.php">Login</a>
</body>
</html>

login.php

<?php
session_start();
$conn = mysqli_connect('localhost', 'root', '', 'myapp');
$msg = '';

if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $email = $_POST['email'];
    $password = $_POST['password'];

    if ($email && $password) {
        $q = "SELECT * FROM image_table WHERE email='$email' AND password='$password'";
        $res = mysqli_query($conn, $q);
        if ($res && mysqli_num_rows($res) == 1) {
            $row = mysqli_fetch_assoc($res);
            $_SESSION['user_id'] = $row['id'];
            $_SESSION['name'] = $row['name'];
            $_SESSION['email'] = $row['email'];
            $_SESSION['profile'] = $row['profile_image'];
            header('Location: home.php');
            exit;
        } else {
            $msg = 'Invalid credentials';
        }
    } else {
        $msg = 'Please fill all fields';
    }
}
?>
<!DOCTYPE html>
<html>
<head><title>Login</title></head>
<body>
<h2>Login</h2>
<form method="post">
Email: <input type="email" name="email"><br><br>
Password: <input type="password" name="password"><br><br>
<input type="submit" value="Login">
</form>
<p style="color:red;"><?php echo $msg; ?></p>
<a href="registration.php">Register</a>
</body>
</html>

home.php

<?php
session_start();
if (!isset($_SESSION['user_id'])) {
    header('Location: login.php');
    exit;
}
$name = $_SESSION['name'];
$email = $_SESSION['email'];
$profile = $_SESSION['profile'];
?>
<!DOCTYPE html>
<html>
<head><title>Home</title></head>
<body>
<h2>Welcome <?php echo $name; ?></h2>
<p>Email: <?php echo $email; ?></p>
<img src="<?php echo $profile; ?>" width="120"><br><br>
<a href="logout.php">Logout</a>
</body>
</html>

logout.php

<?php
session_start();
session_destroy();
header('Location: login.php');
exit;
?>