Hier ein HTML Template
<!DOCTYPE html>
<html>
<head>
<title>Datei-Upload mit PHP</title>
</head>
<body>
<h1>Datei hochladen</h1>
<form action="upload.php" method="POST" enctype="multipart/form-data">
<input type="file" name="fileToUpload" id="fileToUpload">
<input type="submit" value="Hochladen" name="submit">
</form>
</body>
</html>
und ein PHP Script das den Upload durchführt.
<?php
$targetDir = "uploads/";
$targetFile = $targetDir . basename($_FILES["fileToUpload"]["name"]);
$uploadOk = 1;
$imageFileType = strtolower(pathinfo($targetFile, PATHINFO_EXTENSION));
// Prüfen, ob es sich um eine echte Datei handelt
if (isset($_POST["submit"])) {
$check = getimagesize($_FILES["fileToUpload"]["tmp_name"]);
if ($check !== false) {
echo "Datei ist eine Bilddatei - " . $check["mime"] . ".";
$uploadOk = 1;
} else {
echo "Datei ist keine Bilddatei.";
$uploadOk = 0;
}
}
// Prüfen auf Dateigröße
if ($_FILES["fileToUpload"]["size"] > 500000) {
echo "Sorry, Ihre Datei ist zu groß.";
$uploadOk = 0;
}
// Dateitypen begrenzen (hier auf Bilder beschränkt)
if ($imageFileType != "jpg" && $imageFileType != "png" && $imageFileType != "jpeg"
&& $imageFileType != "gif") {
echo "Sorry, nur JPG, JPEG, PNG & GIF Dateien sind erlaubt.";
$uploadOk = 0;
}
// Überprüfen, ob $uploadOk auf 0 gesetzt wurde (Fehler bei der Validierung)
if ($uploadOk == 0) {
echo "Ihre Datei wurde nicht hochgeladen.";
// Alles in Ordnung, versuche die Datei hochzuladen
} else {
if (move_uploaded_file($_FILES["fileToUpload"]["tmp_name"], $targetFile)) {
echo "Die Datei " . htmlspecialchars(basename($_FILES["fileToUpload"]["name"])) . " wurde hochgeladen.";
} else {
echo "Es gab einen Fehler beim Hochladen Ihrer Datei.";
}
}
?>