如何使用PHP開發簡單的檔案管理功能
簡介:
檔案管理功能在許多網路應用程式中都是不可或缺的一部分。它允許用戶上傳、下載、刪除和展示文件,為用戶提供了便捷的文件管理方式。本文將介紹如何使用PHP開發一個簡單的檔案管理功能,並提供具體的程式碼範例。
一、建立專案
首先,我們需要建立一個基本的PHP專案。在專案目錄下建立以下檔案:
二、建立資料庫
為了儲存檔案訊息,我們需要建立一個資料庫。在MySQL中執行以下SQL語句建立一個名為「filemanager」的資料庫,並建立一個名為「files」的表格用於儲存檔案資訊:
CREATE DATABASE filemanager; USE filemanager; CREATE TABLE files ( id INT(11) AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) NOT NULL, size INT(11) NOT NULL, type VARCHAR(255) NOT NULL );
三、編寫程式碼
index.php
<!DOCTYPE html> <html> <head> <title>文件管理</title> </head> <body> <h1>文件管理</h1> <h2>上传文件</h2> <form action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="file"> <input type="submit" value="上传"> </form> <h2>文件列表</h2> <?php $conn = new mysqli("localhost", "root", "", "filemanager"); $result = $conn->query("SELECT * FROM files"); if ($result->num_rows > 0) { while ($row = $result->fetch_assoc()) { echo "<a href='download.php?id=" . $row["id"] . "'>" . $row["name"] . "</a> (" . $row["size"] . " bytes)<br>"; } } else { echo "暂无文件"; } $conn->close(); ?> </body> </html>
upload.php
<?php $targetDirectory = "uploads/"; $filename = $_FILES["file"]["name"]; $filesize = $_FILES["file"]["size"]; $filetype = $_FILES["file"]["type"]; $conn = new mysqli("localhost", "root", "", "filemanager"); $conn->query("INSERT INTO files (name, size, type) VALUES ('$filename', $filesize, '$filetype')"); $fileId = $conn->insert_id; $targetFile = $targetDirectory . $fileId; move_uploaded_file($_FILES["file"]["tmp_name"], $targetFile); $conn->close(); header("Location: index.php"); ?>
delete.php
<?php $fileId = $_GET["id"]; $conn = new mysqli("localhost", "root", "", "filemanager"); $result = $conn->query("SELECT * FROM files WHERE id = $fileId"); if ($result->num_rows > 0) { $row = $result->fetch_assoc(); $targetFile = "uploads/" . $row["id"]; unlink($targetFile); $conn->query("DELETE FROM files WHERE id = $fileId"); } $conn->close(); header("Location: index.php"); ?>
以上是如何使用PHP開發簡單的檔案管理功能的詳細內容。更多資訊請關注PHP中文網其他相關文章!