Im modernen Internetzeitalter ist die Galeriefunktion zu einem Standardmerkmal vieler Websites geworden, und PHP als leistungsstarke Programmiersprache bietet auch vielfältige Möglichkeiten, diese Funktion zu implementieren.
In diesem Artikel erfahren Sie, wie Sie mit PHP eine einfache Online-Galeriefunktion zum Hochladen, Durchsuchen und Löschen von Bildern implementieren.
1. Vorbereitung
Bevor wir PHP zur Implementierung der Online-Galerie-Funktion verwenden, müssen wir einige grundlegende Arbeiten vorbereiten:
1. Installieren Sie PHP und MySQL.
2. Bereiten Sie den Server für die Unterstützung des PHP-Datei-Uploads vor.
3. Verwenden Sie den folgenden Befehl, um einen neuen MySQL-Benutzer und ein neues Passwort auf dem Host zu erstellen:
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'user_password';
4 Speichern von Galerieinformationen. Sie können die folgenden Befehle verwenden:
CREATE DATABASE mydb
;mydb
;
CREATE TABLE images
(
id
int(11) NOT NULL AUTO_INCREMENT,
name
varchar(255) NOT NULL,
path
varchar(255) NOT NULL,
uploaded_time
datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id
CREATE TABLE images
(
id
int(11) NOT NULL AUTO_INCREMENT, name
varchar(255) NOT NULL,
path
varchar(255) NOT NULL, uploaded_time
datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
5 Erstellen Sie einen neuen Ordner zum Speichern hochgeladener Bilder.
2. Implementieren Sie die Upload-Funktion
Zunächst müssen wir ein HTML-Formular erstellen, damit Benutzer Bilddateien hochladen können. Dieses Formular muss über das Attribut „enctype="multipart/form-data" verfügen, um Dateien hochladen zu können. Das Folgende ist der Formularcode:
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES"file");$uploadOk = 1;
$imageFileType = strtolower(pathinfo ($ target_file,PATHINFO_EXTENSION));
// Überprüfen Sie, ob die Datei ein Bildtyp ist
$check = getimagesize($_FILES["file"]["tmp_name"]); if($check !== false) { echo "文件是一个图像," . $check["mime"] . "."; $uploadOk = 1; } else { echo "文件不是一个图像。"; $uploadOk = 0; }
// Überprüfen Sie, ob die Datei bereits existiert
echo "抱歉,文件已经存在。"; $uploadOk = 0;
// Dateigröße prüfen
if ($_FILES"file" > 500000) {
echo "抱歉,您的文件太大。"; $uploadOk = 0;
}
// Bestimmte Dateiformate zulassen
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
echo "抱歉,只能上传JPG、JPEG、PNG和GIF格式的文件。"; $uploadOk = 0;
// Upload-Status prüfen
if ($uploadOk == 0) {
echo "抱歉,您的文件未能上传。";
// Wenn alles gut geht, versuchen Sie, die Datei in das Zielverzeichnis zu verschieben
} else {if (move_uploaded_file($_FILES["file"]["tmp_name"], $target_file)) { echo "文件" . basename( $_FILES["file"]["name"]). "上传成功。"; // 将文件路径、名称和上传时间保存到数据库中 $img_name = $_FILES["file"]["name"]; $img_path = $target_file; $sql = "INSERT INTO images (name, path) VALUES ('$img_name', '$img_path')"; $result = mysqli_query($conn, $sql); } else { echo "抱歉,发生了错误,您的文件无法上传。"; }
?>
Der Code führt zunächst mehrere Prüfungen durch, z. B. die Prüfung, ob die Datei vorhanden ist ein Bild, ob die Datei bereits vorhanden ist, sowie die Dateigrößenbeschränkungen und zulässigen Dateiformate. Wenn alle diese Prüfungen erfolgreich sind, kann die Datei in das angegebene Verzeichnis verschoben und einige Informationen für Such- und Löschvorgänge in der Datenbank gespeichert werden.
3. Implementieren Sie die Browsing-Funktion
Als nächstes müssen wir die Funktion zum Durchsuchen der hochgeladenen Bilder implementieren. Dazu müssen wir die in der Datenbank gespeicherten Bildinformationen auslesen und auf der Webseite anzeigen.
// Holen Sie sich die Pfade aller Bilder aus der Datenbank
$sql = "SELECT id, name, path FROM images";
$result = mysqli_query($conn, $sql) ;
// Durchlaufen Sie den Pfad und den Namen und geben Sie HTML aus
while($row = mysqli_fetch_assoc($result)) {$img_id = $row["id"]; $img_name = $row["name"]; $img_path = $row["path"]; echo '<div class="image">'; echo '<a href="view.php?id=' . $img_id . '"><img src="' . $img_path . '" title="' . $img_name . '"></a>'; echo '</div>';
?>
Four. Implementieren Sie die Löschfunktion
Hier ist der Code:
if(isset($_GET["delete"])) {
$id = $_GET["delete"]; // 从数据库中删除记录 $sql = "DELETE FROM images WHERE id='$id'"; $result = mysqli_query($conn, $sql); // 删除本地文件 $info_query = "SELECT path FROM images WHERE id='$id'"; $info_result = mysqli_query($conn, $info_query); $row = mysqli_fetch_assoc($info_result); unlink($row["path"]); // 将用户重定向到基页面 header("location: index.php");
?>
Dieser Code löscht den Datensatz basierend auf dem ID des Bildes und löschen Sie die lokal angegebene Datei. Leiten Sie den Benutzer anschließend zur Basisgalerieseite weiter.
🎜Zusammenfassung🎜🎜Durch die Einleitung dieses Artikels können wir verstehen, wie PHP zum Implementieren von Online-Galeriefunktionen verwendet wird, einschließlich der Funktionen zum Hochladen, Durchsuchen und Löschen von Bildern. 🎜🎜Es ist zu beachten, dass einige wichtige Details des Codes, wie z. B. Eingabevalidierung, Dateigrößenbeschränkungen und Dateitypvalidierung, alle so eingerichtet sind, dass Sicherheit und Integrität gewährleistet sind. In praktischen Anwendungen können diese Codes entsprechend den eigenen Bedürfnissen geändert und erweitert werden. 🎜Das obige ist der detaillierte Inhalt vonPHP implementiert die Online-Galerie-Funktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!