PHP implementiert den Datei-Upload auf den Server (einschließlich Code)

烟雨青岚
Freigeben: 2023-04-08 22:08:01
nach vorne
4964 Leute haben es durchsucht

PHP implementiert den Datei-Upload auf den Server (einschließlich Code)

PHP-Implementierung des Datei-Uploads auf den Server (einschließlich Code)

Erstellen Sie ein Datei-Upload-Formular

Es ist sehr nützlich, Benutzern das Hochladen von Dateien aus einem Formular zu erlauben.

Bitte schauen Sie sich das folgende HTML-Formular zum Hochladen von Dateien an:

<html>
<body>
<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" /> 
<br />
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>
Nach dem Login kopieren

Bitte beachten Sie folgende Informationen zu diesem Formular:

gibt an, dass die Eingabe als Datei verarbeitet werden soll. Wenn Sie beispielsweise eine Vorschau in einem Browser anzeigen, wird neben dem Eingabefeld eine Schaltfläche zum Durchsuchen angezeigt.

Hinweis: Benutzern das Hochladen von Dateien zu erlauben, stellt ein großes Sicherheitsrisiko dar. Bitte erlauben Sie nur vertrauenswürdigen Benutzern, Datei-Upload-Vorgänge durchzuführen.

Erstellen Sie ein Upload-Skript

Die Datei „upload_file.php“ enthält den Code zum Hochladen von Dateien:

<?php
if ($_FILES["file"]["error"] > 0)
  {
  echo "Error: " . $_FILES["file"]["error"] . "<br />";
  }
else
  {
  echo "Upload: " . $_FILES["file"]["name"] . "<br />";
  echo "Type: " . $_FILES["file"]["type"] . "<br />";
  echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
  echo "Stored in: " . $_FILES["file"]["tmp_name"];
  }
?>
Nach dem Login kopieren

Mithilfe des globalen Arrays $_FILES von PHP , Sie können Dateien von einem Client-Computer auf einen Remote-Server hochladen.

Der erste Parameter ist der Eingabename des Formulars, und der zweite Index kann „Name“, „Typ“, „Größe“, „tmp_name“ oder „Fehler“ sein. Etwa so:

$_FILES["file"]["name"] – Der Name der hochgeladenen Datei $_FILES["file"]["type"] - Der Typ der hochgeladenen Datei $_FILES[ " file"]["size"] – Die Größe der hochgeladenen Datei in Bytes $_FILES["file"]["tmp_name"] - Der Name der temporären Kopie der auf dem Server gespeicherten Datei $_FILES["file "][ "error"] – Fehlercode, der durch das Hochladen von Dateien verursacht wurde

Dies ist eine sehr einfache Möglichkeit, Dateien hochzuladen. Aus Sicherheitsgründen sollten Sie Beschränkungen hinzufügen, wer zum Hochladen von Dateien berechtigt ist.

Upload-Limit

In diesem Skript haben wir ein Limit für Datei-Uploads hinzugefügt. Benutzer können nur .gif- oder .jpeg-Dateien hochladen, und die Dateigröße muss weniger als 20 KB betragen:

<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Error: " . $_FILES["file"]["error"] . "<br />";
    }
  else
    {
    echo "Upload: " . $_FILES["file"]["name"] . "<br />";
    echo "Type: " . $_FILES["file"]["type"] . "<br />";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
    echo "Stored in: " . $_FILES["file"]["tmp_name"];
    }
  }
else
  {
  echo "Invalid file";
  }
?>
Nach dem Login kopieren

Speichern Sie die hochgeladene Datei

Das obige Beispiel ist in Der temporäre PHP-Ordner des Servers erstellt eine temporäre Kopie der hochgeladenen Datei.

Diese temporäre Kopie verschwindet, wenn das Skript endet. Um die hochgeladene Datei zu speichern, müssen wir sie an einen anderen Ort kopieren:

<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
    }
  else
    {
    echo "Upload: " . $_FILES["file"]["name"] . "<br />";
    echo "Type: " . $_FILES["file"]["type"] . "<br />";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";
    if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
      echo $_FILES["file"]["name"] . " already exists. ";
      }
    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
      }
    }
  }
else
  {
  echo "Invalid file";
  }
?>
Nach dem Login kopieren

Das obige Skript erkennt, ob die Datei bereits existiert. Wenn sie nicht existiert, kopiert es die Datei in den angegebenen Ordner.

Hinweis: In diesem Beispiel wird die Datei in einem neuen Ordner mit dem Namen „upload“ gespeichert.

Beginnen Sie mit dem Herausnehmen des dritten Elements des Arrays und geben Sie die verbleibenden Elemente im Array zurück:

<?php
$a=array("red","green","blue","yellow","brown");
print_r(array_slice($a,2));
?>
Nach dem Login kopieren

Vielen Dank fürs Lesen, ich hoffe, Sie werden viel davon profitieren.

Originallink: https://www.cnblogs.com/yszr/p/10522067.html

Empfohlenes Tutorial: „PHP-Tutorial

Das obige ist der detaillierte Inhalt vonPHP implementiert den Datei-Upload auf den Server (einschließlich Code). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:51dev.com
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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!