Laden Sie eine Datei in PHP hoch

WBOY
Freigeben: 2024-08-29 13:07:39
Original
946 Leute haben es durchsucht

In PHP können Benutzer Dateien mit der Datei-Upload-Funktion hochladen und die Datei, die über das Formular übermittelt werden muss, einfach anhängen und hochladen. Der Benutzer kann viele Arten von Dateien hochladen, darunter Dokumentformate, Bildformate, PDF-Formulare usw. Diese Art von Dateien haben eine Erweiterung, z. B. .docx, .jpeg, .pdf usw. Diese Art von Datei wird von validiert Formular und die Größe der Datei ist so eingestellt, dass nicht mehr als diese Größe hochgeladen werden darf. Dies ist eine erweiterte Funktion für Benutzer, die früher Daten manuell eingegeben haben und sich jetzt für diese Option entscheiden.

Wie erstelle und lade ich eine Datei in PHP hoch?

Mit PHP ist es sehr einfach, Dateien über ein Formular auf den Server hochzuladen und die Daten sind auch im Vergleich zu anderen sicher. Die Konfigurationsdatei „php.ini“ verfügt über eine Variable, die für die hochzuladenden Dateien festgelegt werden muss. Sie heißt „file_uploads“ und sollte aktiviert sein, um die Upload-Funktion zu aktivieren. Zum Hochladen einer Datei auf den Server müssen wir einige Schritte ausführen.

Starten Sie Ihren kostenlosen Softwareentwicklungskurs

Webentwicklung, Programmiersprachen, Softwaretests und andere

Bevor eine Datei mithilfe eines Formulars auf den Server hochgeladen wird, finden nur wenige Prüfungen statt. Diese Prüfungen werden als Validierung der hochgeladenen Datei bezeichnet.

Im Folgenden sind einige wichtige Punkte aufgeführt, die der Entwickler zur Validierung des Formulars codiert:

Laden Sie eine Datei in PHP hoch

1. Datei-Uploads

Der Wert dieser Variable sollte ON sein, damit die Dateien hochgeladen werden können. Wenn es nicht aktiviert ist, kann die Datei nicht auf den Server hochgeladen werden. Es sollte also immer eingeschaltet sein.

2. Maximale Größe hochladen

Mit dieser Anweisung wird die maximale Größe der Datei konfiguriert, die mithilfe eines Formulars auf den Server hochgeladen werden kann. Dabei handelt es sich um eine Art Überprüfung, die durchgeführt wird, um die Dateigröße des hochgeladenen Benutzers zu ermitteln. Die Standardgröße der Datei ist auf 2 MB (zwei Megabyte) eingestellt, und wir können diese Art von Einstellung mit der .htaccess-Datei überschreiben, wobei der Entwickler die Größe der Datei erhöhen kann. Zwei Megabyte sind nach heutigen Maßstäben nicht viel, daher müssen wir diese möglicherweise erhöhen. Wenn Sie beim Versuch, eine Datei hochzuladen, eine Fehlermeldung erhalten, dass die Dateigröße den Wert upload_max_filesize überschreitet, müssen Sie den Wert erhöhen. Wenn Sie dies tun, erhöhen Sie unbedingt auch post_max_size.

3. Upload_tmp_dir

Es wird ein temporäres Verzeichnis festgelegt, das vom Benutzer zum Speichern der hochgeladenen Dateien verwendet wird. In den meisten Fällen müssen wir uns über diese Einstellung jedoch keine Gedanken machen. Wenn wir es nicht festlegen, legt das System standardmäßig automatisch das temporäre Verzeichnis fest, das verwendet werden kann.

4. Post_max_size

Mit der post_max_size-Direktive können wir die maximale Größe der von der POST-Methode hochgeladenen Daten festlegen. Da Dateien über POST-Anfragen hochgeladen werden, muss der Wert größer sein als der Wert, den wir für upload_max_filesize festgelegt haben. Wenn die upload_max_filesize beispielsweise 20 MB (20 Megabyte) beträgt, müssen wir möglicherweise die post_max_size auf 24 MB festlegen.

5. Max_file_uploads

Hier können Sie die maximale Anzahl von Dateien festlegen, die der Benutzer auf einmal hochladen kann. Die Standardanzahl beträgt jeweils 20 für den Benutzer.

6. Max_input_time

Dies ist die Anzahl der Sekunden, die ein Skript vom Benutzer zum Parsen der Eingabedaten erhält. Wir sollten ihn auf einen angemessenen Wert einstellen, wenn wir es mit großen Datei-Uploads zu tun haben. 60 (60 Sekunden) und ist für die meisten Apps ein guter Wert.

7. Memory_limit

Die Speicherbegrenzungsanweisung gibt an, wie viel Speicher ein Skript maximal auf dem Server beanspruchen kann. Wenn beim Hochladen großer Dateien Probleme auftreten, müssen wir den Wert der Direktive auf einen höheren Wert setzen als den Wert, den wir für die Direktive post_max_size festgelegt haben. Standardmäßig ist der Wert auf 128 MB (128 Megabyte) eingestellt, sodass wir uns darüber keine Sorgen machen müssen, es sei denn, wir haben eine sehr große post_max_size und upload_max_filesize.

8. Max_execution_time

Diese Anweisung wird für die maximale Anzahl von Sekunden verwendet, die ein Skript auf dem Server ausführen darf. Wenn beim Hochladen großer Dateien Probleme auftreten, können wir den Wert auf mehr Sekunden wie 60 (1 Minute) erhöhen, was für die meisten Anwendungen gut funktionieren sollte.

Beispiele zum Hochladen einer Datei in PHP

Im Folgenden finden Sie die genannten Beispiele::

Beispiel #1

Code:

<!DOCTYPE html>
<html>
<body>
<form action="uploadimage.php" method="POST" enctype="multipart/form-data">
Select any image to upload:
<input type="File" name="FileUpload" id="FileUpload">
<input type="submit" value="Upload" name="SUBMIT">
</form>
</body>
</html>
Nach dem Login kopieren

Ausgabe:

Laden Sie eine Datei in PHP hoch

Beispiel #2

Code:

<!DOCTYPE html>
<html lang="en">
<head>
<title>Photo Upload Form</title>
</head>
<body>
<form action="upload.php" method="POST" enctype="multipart/form-data">
<h1>Upload File</h1>
<label for="fileSelect">Filename:</label>
<input type="file" name="photo" id="FileSelect">
<input type="submit" name="SUBMIT" value="Upload Photo">
<p><strong>Note:</strong> Only .jpg, .jpeg, .gif, .png formats allowed to a max size of 2 MB larger than that cannot not be uploaded.</p>
</form>
</body>
</html>
Nach dem Login kopieren

Ausgabe:

Laden Sie eine Datei in PHP hoch

Beispiel #3

Code:

<!DOCTYPE html>
<html>
<body>
<form action="upload.php" method="POST" enctype="multipart/form-data">
Select a file to upload:
<input type="file" name="FileToUpload"/>
<input type="submit" value="Upload" name="submit"/>
</form>
</body>
</html>
Nach dem Login kopieren

Ausgabe:

Laden Sie eine Datei in PHP hoch

Beispiel #4

Code:

<?php
$target_path = "c:/";
$target_path = $target_path.basename( $_FILES['fileToUpload']['name']);
if(move_uploaded_file($_FILES['fileToUpload']['tmp_name'], $target_path)) {
echo "File has been uploaded successfully!";
}
else
{
echo "Sorry, file not uploaded, please check and try again!";
}
?>
Nach dem Login kopieren

Output:

Laden Sie eine Datei in PHP hoch

In the above examples, the user can see the screen that is present in the snapshots. Users will attach the document by clicking the “choose file” option. The file will get attached once the user selects the file from his local machine and clicks on the Upload button to submit the documents to the server. The user will then be prompted a message stating that the file has been uploaded successfully.

Conclusion

In this article, we discussed how a user can upload a file to the server using the form and how an uploaded file can be validated in various forms, and the server restrictions for uploading a file. The user might not understand the process of the backend but the developer has to code in such a way that the document uploaded by the user should be correct and the data is secured.

Das obige ist der detaillierte Inhalt vonLaden Sie eine Datei in PHP hoch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:php
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!