The content of this article is about the code that combines php and html to upload image files to the server. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to you.
一.html code
<body>
<form action="" method="post" enctype="multipart/form-data" name="upload_form">
<label>選擇圖片文件</label>
<input name="imgfile" type="file" accept="image/gif, image/jpeg"/>
<input name="upload" type="submit" value="上傳" />
</form>
</body>
二.php code
if (isset($_FILES['imgfile'])
&& is_uploaded_file($_FILES['imgfile']['tmp_name']))
{
$imgFile = $_FILES['imgfile'];
$upErr = $imgFile['error'];
if ($upErr == 0)
{
$imgType = $imgFile['type']; //文件類型。
/* 判斷文件類型,這個(gè)例子里僅支持jpg和gif類型的圖片文件。*/
if ($imgType == 'image/jpeg'
|| $imgType == 'image/gif')
{
$imgFileName = $imgFile['name'];
$imgSize = $imgFile['size'];
$imgTmpFile = $imgFile['tmp_name'];
/*
將文件從臨時(shí)文件夾移到上傳文件夾中。
注意:upfile這個(gè)文件夾必須先創(chuàng)建好,不然會報(bào)錯(cuò)。
*/
move_uploaded_file($imgTmpFile, 'upfile/'.$imgFileName);
/*顯示上傳后的文件的信息。*/
$strPrompt = sprintf("文件%s上傳成功<br>"
. "文件大小: %s字節(jié)<br>"
. "<img src='upfile/%s'>"
, $imgFileName, $imgSize, $imgFileName
);
echo $strPrompt;
}
else
{
echo "請選擇jpg或gif文件,不支持其它類型的文件。";
}
}
else
{
echo "文件上傳失敗。<br>";
switch ($upErr)
{
case 1:
echo "超過了php.ini中設(shè)置的上傳文件大小。";
break;
case 2:
echo "超過了MAX_FILE_SIZE選項(xiàng)指定的文件大小。";
break;
case 3:
echo "文件只有部分被上傳。";
break;
case 4:
echo "文件未被上傳。";
break;
case 5:
echo "上傳文件大小為0";
break;
}
}
}
else
{
}
三.php code analysis:
$_FILES is an array variable used to save uploaded file information.
$_FILES['imgfile'] indicates the information of the file uploaded after the control with the file domain name 'imgfile' is submitted to the server.
An uploaded file has the following attribute information:
'name': The name of the uploaded file on the client.
'type': The MIME type of the file, such as "image/jpeg".
'size': The size of the uploaded file, in bytes.
'tmp_name': When uploading, the uploaded file will be saved in a temporary folder on the server side. You can get the temporary file name through this attribute.
'error': Error code during file upload. If the upload is successful, this value is 0. The meanings of other values ??are as follows:
1: Exceeds the upload file size set in php.ini.
2: The file size specified by the MAX_FILE_SIZE option is exceeded.
3: Only part of the file was uploaded.
4: The file was not uploaded.
5: The uploaded file size is 0.
The code first determines whether the $_FILES['imgfile'] variable exists. If it exists, and the file pointed to by the $_FILES['imgfile']['tmp_name'] variable is uploaded , determine the error attribute. If the attribute is 0, move the uploaded image from the temporary folder to the upfile folder, display the uploaded file information, and display the uploaded image.
If the error value is not 0, it means the upload failed and the failure message is displayed.
4. Complete code
上傳圖片文件
"
. "文件大小: %s字節(jié)
"
. "
"
, $imgFileName, $imgSize, $imgFileName
);
echo $strPrompt;
}
else
{
echo "請選擇jpg或gif文件,不支持其它類型的文件。";
}
}
else
{
echo "文件上傳失敗。
";
switch ($upErr)
{
case 1:
echo "超過了php.ini中設(shè)置的上傳文件大小。";
break;
case 2:
echo "超過了MAX_FILE_SIZE選項(xiàng)指定的文件大小。";
break;
case 3:
echo "文件只有部分被上傳。";
break;
case 4:
echo "文件未被上傳。";
break;
case 5:
echo "上傳文件大小為0";
break;
}
}
}
else
{
/*顯示表單。*/
?>
<body>
<form action="" method="post" enctype="multipart/form-data" name="upload_form">
<label>選擇圖片文件</label>
<input name="imgfile" type="file" accept="image/gif, image/jpeg"/>
<input name="upload" type="submit" value="上傳" />
</form>
</body>
Recommended related articles:
What are php type constraints? Introduction and usage of php type constraints
Summary of methods to delete one element from an array and delete multiple elements from an array in php (with code)
The above is the detailed content of Combining php and html to implement code for uploading image files to the server. For more information, please follow other related articles on the PHP Chinese website!