PHP implementiert die Online-Galerie-Funktion

PHPz
Freigeben: 2023-06-22 17:54:02
Original
1829 Leute haben es durchsucht

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,

PRIMARY KEY (id)

) 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:

<input type="file" name="file" id="file">
<input type="submit" name="submit" value="上传">
Nach dem Login kopieren



In diesem Formular haben wir define Erstellt ein Datei-Upload-Element und implementiert eine Schaltfläche „Datei hochladen“ in nativem HTML. Wenn der Benutzer auf diese Schaltfläche klickt, lädt das Formular die Datei in die Datei upload.php auf dem Server hoch.

Als nächstes müssen wir den Code für die Datei upload.php schreiben, um die Verarbeitung und das Speichern der hochgeladenen Datei abzuschließen. Das Folgende ist der Code:

$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

if(isset($_POST["submit"])) {

$check = getimagesize($_FILES["file"]["tmp_name"]);
if($check !== false) {
    echo "文件是一个图像," . $check["mime"] . ".";
    $uploadOk = 1;
} else {
    echo "文件不是一个图像。";
    $uploadOk = 0;
}
Nach dem Login kopieren

}


// Überprüfen Sie, ob die Datei bereits existiert

if (file_exists($ target_file)) {

echo "抱歉,文件已经存在。";
$uploadOk = 0;
Nach dem Login kopieren

}


// Dateigröße prüfen
if ($_FILES"file" > 500000) {

echo "抱歉,您的文件太大。";
$uploadOk = 0;
Nach dem Login kopieren

}

// Bestimmte Dateiformate zulassen
if($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"

&& $imageFileType != "gif" ) {

echo "抱歉,只能上传JPG、JPEG、PNG和GIF格式的文件。";
$uploadOk = 0;
Nach dem Login kopieren

}

// Upload-Status prüfen
if ($uploadOk == 0) {

echo "抱歉,您的文件未能上传。";
Nach dem Login kopieren

// 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 "抱歉,发生了错误,您的文件无法上传。";
}
Nach dem Login kopieren

}

?>

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.

Das Folgende ist der Code:


// 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>';
Nach dem Login kopieren

}

?>

Four. Implementieren Sie die Löschfunktion

Der letzte Der Schritt besteht darin, die Funktion für gelöschte Bilder hinzuzufügen. Wenn ein Benutzer ein Bild hochlädt und es nicht mehr benötigt, kann er es aus der Galerie löschen.


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");
Nach dem Login kopieren
}

?>

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage