⬅ Back to Projects

Gallery Project — Source Code

db.php

<?php
$host = "localhost";
$user = "root";
$pwd = "";
$dbname = "mygallery";

$conn = mysqli_connect($host, $user, $pwd, $dbname);
if (!$conn) {
    die("Database Connection Failed: " . mysqli_connect_error());
}
?>

signup.php

<?php
include 'db.php';
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $name = $_POST['name'];
    $email = $_POST['email'];
    $password = $_POST['password'];

    $check = mysqli_query($conn, "SELECT * FROM users WHERE email='$email'");
    if (mysqli_num_rows($check) == 0) {
        mysqli_query($conn, "INSERT INTO users(name,email,password) VALUES('$name','$email','$password')");
        echo "Signup successful! <a href='login.php'>Login here</a>";
    } else {
        echo "Email already exists!";
    }
}
?>
<form method="POST">
    <input type="text" name="name" placeholder="Name" required><br>
    <input type="email" name="email" placeholder="Email" required><br>
    <input type="password" name="password" placeholder="Password" required><br>
    <button type="submit">Signup</button>
</form>

login.php

<?php
include 'db.php';
session_start();
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $email = $_POST['email'];
    $password = $_POST['password'];

    $result = mysqli_query($conn, "SELECT * FROM users WHERE email='$email' AND password='$password'");
    if (mysqli_num_rows($result) == 1) {
        $row = mysqli_fetch_assoc($result);
        $_SESSION['user'] = $row['name'];
        $_SESSION['email'] = $row['email'];
        header('Location: upload.php');
    } else {
        echo "Invalid email or password!";
    }
}
?>
<form method="POST">
    <input type="email" name="email" placeholder="Email" required><br>
    <input type="password" name="password" placeholder="Password" required><br>
    <button type="submit">Login</button>
</form>

upload.php

<?php
include 'db.php';
session_start();
if (!isset($_SESSION['user'])) {
    echo "<a href='login.php'>Login first</a>";
    exit;
}
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $access = $_POST['access'];
    $comment = $_POST['comment'];
    $file = $_FILES['file']['name'];
    $tmp = $_FILES['file']['tmp_name'];
    $path = 'uploads/' . basename($file);
    if (move_uploaded_file($tmp, $path)) {
        $name = $_SESSION['user'];
        $email = $_SESSION['email'];
        mysqli_query($conn, "INSERT INTO image(filename, access_type, comment, user_name, user_email) VALUES('$file','$access','$comment','$name','$email')");
        echo "File uploaded successfully!";
    } else {
        echo "Upload failed!";
    }
}
?>
<form method="POST" enctype="multipart/form-data">
    <select name="access">
        <option value="public">Public</option>
        <option value="private">Private</option>
    </select><br>
    <input type="file" name="file" required><br>
    <textarea name="comment" placeholder="Description"></textarea><br>
    <button type="submit">Upload</button>
</form>
<br><a href='display.php'>View Uploaded Images</a> | <a href='logout.php'>Logout</a>

display.php

<?php
include 'db.php';
session_start();
echo "<h3>Public Images</h3>";
$public = mysqli_query($conn, "SELECT * FROM image WHERE access_type='public'");
while ($row = mysqli_fetch_assoc($public)) {
    echo "<div><img src='uploads/{$row['filename']}' width='150'><br>{$row['comment']}<br></div>";
}
if (isset($_SESSION['user'])) {
    echo "<h3>Your Private Images</h3>";
    $email = $_SESSION['email'];
    $private = mysqli_query($conn, "SELECT * FROM image WHERE access_type='private' AND user_email='$email'");
    while ($row = mysqli_fetch_assoc($private)) {
        echo "<div><img src='uploads/{$row['filename']}' width='150'><br>{$row['comment']}<br><a href='delete.php?id={$row['id']}'>Delete</a></div>";
    }
}
?>

delete.php

<?php
include 'db.php';
session_start();
if (!isset($_SESSION['user'])) {
    echo "Login first!";
    exit;
}
$id = $_GET['id'];
$email = $_SESSION['email'];
$result = mysqli_query($conn, "SELECT * FROM image WHERE id='$id' AND user_email='$email'");
if (mysqli_num_rows($result) == 1) {
    $row = mysqli_fetch_assoc($result);
    unlink('uploads/' . $row['filename']);
    mysqli_query($conn, "DELETE FROM image WHERE id='$id'");
    echo "Deleted successfully! <a href='display.php'>Back</a>";
} else {
    echo "Unauthorized delete!";
}
?>

logout.php

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