Principle of uploading files in php
File upload principle
Upload the client's files to the server, and then upload the server's temporary files to the specified Table of contents
Client configuration
Submit form
The sending method of the form is post
Add enctype="multipart/form-data"
Server-side configuration (Recommended learning: PHP programming from entry to proficiency)
file_uploads = On, supports HTTP upload
uoload_tmp_dir =, temporary file storage directory
upload_max_filesize = 2M, the maximum size of files allowed to be uploaded
max_file_uploads = 20, allows one upload to Maximum number of files
post_max_size = 8M, the maximum value of data sent in post mode
max_execution_time = -1, sets the maximum execution time allowed before the script is terminated by the parser, in seconds, to prevent The program is poorly written and consumes server resources. -1 represents infinity
max_input_time = 60, the maximum time allowed for the script to parse input data, in seconds
max_input_nesting_level = 64, set the nesting depth of input variables
max_input_vars_ = 1000, how many input variables are accepted (the limit applies to the $_GET, $_POST and $_COOKIE superglobal variables respectively, will cause E_WARNING to be generated, and more input variables will be truncated from the request.
memory_limit = 128M, the maximum independent memory usage of a single thread. That is, a web request gives the thread the definition of the maximum memory usage
Error message description
UPLOAD_ERR_OK : Its value is 0, no error occurs, the file upload is successful
UPLOAD_ERR_INI_SIZE: Its value is 1, the uploaded file exceeds the value limited by the upload_max_filesize option in php.ini
UPLOAD_ERR_FORM_SIZE: Its value is 2, the size of the uploaded file exceeds the value specified by the MAX_FILE_SIZE option in the HTML form
UPLOAD_ERR_PARTIAL: its value is 3, and only part of the file is uploaded
UPLOAD_ERR_NO_FILE: its value is 4, and there is no file Uploaded
UPLOAD_ERR_NO_TMP_DIR: Its value is 6, temporary folder not found
UPLOAD_ERR_CANT_WRITE: Its value is 7, file write failed
UPLOAD_ERR_EXTENSION: Its value is 8 , the uploaded file was interrupted by the PHP extension
Client limit
Limit file upload via form hidden fieldMaximum size of file upload
<input type='hidden' name='MAX_FILE_SIZE' VALUE='字节数' />
via accept Attributes limit the type of uploaded files
<input type='file' name='myFile' accept='文件的MIME类型' />
Restrictions on the client side. Users can modify the code on the web page before uploading, so it has no practical significance. It should be restricted on the server side
Limit the size of uploaded files
Restrict the uploaded file type
Detect whether it is a real image type
Detect whether it is uploaded by HTTP POST method
The above is the detailed content of Principle of uploading files in php. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



PHP 8.4 brings several new features, security improvements, and performance improvements with healthy amounts of feature deprecations and removals. This guide explains how to install PHP 8.4 or upgrade to PHP 8.4 on Ubuntu, Debian, or their derivati

To work with date and time in cakephp4, we are going to make use of the available FrozenTime class.

CakePHP is an open-source framework for PHP. It is intended to make developing, deploying and maintaining applications much easier. CakePHP is based on a MVC-like architecture that is both powerful and easy to grasp. Models, Views, and Controllers gu

To work on file upload we are going to use the form helper. Here, is an example for file upload.

Validator can be created by adding the following two lines in the controller.

Logging in CakePHP is a very easy task. You just have to use one function. You can log errors, exceptions, user activities, action taken by users, for any background process like cronjob. Logging data in CakePHP is easy. The log() function is provide

Visual Studio Code, also known as VS Code, is a free source code editor — or integrated development environment (IDE) — available for all major operating systems. With a large collection of extensions for many programming languages, VS Code can be c

CakePHP is an open source MVC framework. It makes developing, deploying and maintaining applications much easier. CakePHP has a number of libraries to reduce the overload of most common tasks.
