In der Website -Entwicklung ist das Image -Upload eine häufige Anforderung. Um die Sicherheits- und Benutzererfahrung von Bild -Uploads zu gewährleisten, bietet PHP einfache Tools, um diese Funktion zu implementieren. In diesem Artikel wird schrittweise erläutert, wie PHP zum Hochladen und Verarbeitung von Bildern in einem Formular verwendet wird.
Zunächst müssen wir ein Formular in HTML erstellen, damit der Benutzer das Bild auswählen und hochladen kann. Hier ist ein grundlegendes Bild -Upload -Formularcode für Bild:
<!DOCTYPE html> <html> <head> <title>Bild -Upload</title> </head> <body> <form action="upload.php" method="POST" enctype="multipart/form-data"> <input type="file" name="image"> <input type="submit" value="Hochladen"> </form> </body> </html>
Wenn der Benutzer das Bild auswählt und das Formular einreicht, müssen wir PHP verwenden, um das Hochladen des Bildes zu verarbeiten. Vor dem Hochladen müssen wir den Typ und die Größe des Bildes überprüfen und im angegebenen Verzeichnis speichern.
<?php $targetDir = "uploads/"; $targetFile = $targetDir . basename($_FILES["image"]["name"]); $imageFileType = strtolower(pathinfo($targetFile, PATHINFO_EXTENSION)); // Überprüfen Sie den Bildtyp $allowedTypes = array('jpg', 'jpeg', 'png', 'gif'); if (!in_array($imageFileType, $allowedTypes)) { echo "Nur Uploads sind erlaubt JPG, JPEG, PNG oder GIF Formatbild"; exit; } // Überprüfen Sie die Bildgröße $maxSize = 5 * 1024 * 1024; // 5MB if ($_FILES["image"]["size"] > $ maxSize) { echo "Die Bildgröße darf 5 MB nicht überschreiten"; Ausfahrt; } // Verschieben Sie das Bild in das angegebene Verzeichnis if (move_uploaded_file ($ _ files ["Bild"] ["tmp_name"], $ targetFile)) { echo "Bild hochladen erfolgreich"; } anders { echo "Bild -Upload fehlgeschlagen"; } ?>
Das hochgeladene Bild kann weiter verarbeitet werden, z. B. das Anpassen der Bildgröße, das Anschneiden oder das Hinzufügen von Wasserzeichen. Das folgende Beispiel zeigt, wie ein Bild auf eine Miniaturansicht von 200x200 skaliert wird:
<?php $targetDir = "uploads/"; $targetFile = $targetDir . basename($_FILES["image"]["name"]); // Größen Sie die Größe des Bildes $thumbWidth = 200; $thumbHeight = 200; $sourceImage = imagecreatefromjpeg($targetFile); $sourceWidth = imagesx($sourceImage); $sourceHeight = imagesy($sourceImage); $thumbImage = imagecreatetruecolor($thumbWidth, $thumbHeight); imagecopyresized($thumbImage, $sourceImage, 0, 0, 0, 0, $thumbWidth, $thumbHeight, $sourceWidth, $sourceHeight); $thumbFile = $targetDir . "thumb_" . basename($_FILES["image"]["name"]); imagejpeg($thumbImage, $thumbFile); imagedestroy($sourceImage); imagedestroy($thumbImage); echo "Die Bildverarbeitung war erfolgreich"; ?>
Der obige Code passt das Bild an eine Miniaturansicht von 200x200 an und speichert es dem Server.
Durch die obigen Schritte können wir Bilder in PHP -Formularen problemlos hochladen und verarbeiten. Abhängig von Ihren Bedürfnissen können Sie auch weitere Funktionen hinzufügen, z. B. das Hinzufügen von Wasserzeichen, Anbaus oder komplexere Bildbearbeitungsvorgänge. Diese Techniken können Entwicklern helfen, Bilder effizienter hochzuladen.