首页 » PHP教程 » php__files技巧_PHP HTTP文件上传变量_FILES

php__files技巧_PHP HTTP文件上传变量_FILES

访客 2024-11-20 0

扫一扫用手机浏览

文章目录 [+]

例:

upload_file.html

php__files技巧_PHP HTTP文件上传变量_FILES

<html>

php__files技巧_PHP HTTP文件上传变量_FILES
(图片来自网络侵删)

<head>

<title>upload_file.html</title><!--标题名称为upload_file.html-->

<meta charset=\"大众utf-8\"大众><!--外部脚本文件中利用的字符编码为utf-8 中文-->

</head>

<body>

<form enctype=\"大众multipart/form-data\"大众 action=\公众upload_file.php\"大众 method=\"大众post\"大众><!--利用POST的办法上传文件,并通报给upload_file.php处理-->

<input type=\公众hidden\"大众 name=\"大众MAX_FILE_SIZE\"大众 value=\公众32000\"大众 /><!--表示此表单中上传文件每个都不能超过32000个字节-->

上传文件: <input name=\公众sendfile\"大众 type=\公众file\"大众 /><br /><!--表示上传的是文件类型,并将上传文件的详细信息存储在$_FILWS['sendfile']中-->

<input type=\"大众submit\公众 value=\"大众上 传\"大众 /><!--表单上传按钮-->

</form>

</body>

</html>

upload_file.php

<?php

print \"大众<pre>\"大众;

$store_dir = 'd:\\wamp64\www\phptest\upload\\';//文件上传后存储在做事器的路径

$uploadfile = \"大众$store_dir\"大众.basename($_FILES['sendfile']['name']);//上传文件的原始名字

$uploadfile_tmp = $_FILES['sendfile']['tmp_name']; //上传文件的临时名字

$err_msg = $_FILES['sendfile']['error']; //上传文件时产生的缺点信息

if ( $err_msg ) { //如果存在缺点代码则打印出来

print \"大众缺点代码:$err_msg<br>\"大众;

}

if (!is_writeable($store_dir)){//检讨上传文件夹是否可写,不可写则打印缺点信息并退出

print \公众$store_dir 目录不可写\n\"大众;

exit;

}

else {

print \公众$store_dir 目录可写\n\公众; //可写则打印精确信息

}

if ( isset ($_FILES['sendfile']) ) {//检讨上传文件是否存在,如存在则对其进行下一步操作

if (is_uploaded_file($uploadfile_tmp)) {

print \"大众文件考验成功\n\"大众;

}

else {

print \"大众文件考验失落败,可能遭受文件上传攻击!
\公众;

exit;

}

if (move_uploaded_file($uploadfile_tmp, $uploadfile)) {//对上传的合法文件,将其重命名并移动做事器的上传文件夹中

print \"大众文件移动成功\n\"大众;

}

else {

print \公众移动文件失落败,可能遭受文件上传攻击!
\公众;

exit;

}

print \公众文件上载成功!
<br>\公众;

}

else {

print \"大众文件上载失落败! <br>\公众;

}

print '$_FILES=';

print_r($_FILES);//打印$_FILES数组信息

print \"大众</pre>\"大众;

?>

结果:

2.俩个文件同时上传

例:

upload_file_m.html

<html>

<head>

<title>upload_file.html</title><!--标题名称为upload_file.html-->

<meta charset=\"大众utf-8\"大众><!--外部脚本文件中利用的字符编码为utf-8 中文-->

</head>

<body>

<form enctype=\"大众multipart/form-data\"大众 action=\"大众upload_file_m.php\"大众 method=\公众post\公众><!--利用POST的办法上传文件,并通报给upload_file_m.php处理-->

<input type=\公众hidden\"大众 name=\"大众MAX_FILE_SIZE\"大众 value=\"大众1000\"大众 /><!--表示此表单中上传文件每个都不能超过1000个字节-->

上传文件1: <input name=\公众sendfile[]\"大众 type=\"大众file\"大众 /><br /><!--表示上传的是文件类型,并将上传文件的详细信息存储在$_FILWS['sendfile']中-->

上传文件2: <input name=\"大众sendfile[]\"大众 type=\"大众file\"大众 /><br />

<input type=\公众submit\"大众 value=\"大众上 传\公众 /><!--表单上传按钮-->

</form>

</body>

</html>

upload_file_m.php

<?php

print \"大众<pre>\公众;

$store_dir = 'd:\\wamp64\www\phptest\upload\\';//文件上传后存储在做事器的路径

foreach ($_FILES[\"大众sendfile\"大众][\"大众error\公众] as $key => $error) { //遍历办法取出上传文件变量数组$_FILES['sendfile']中每个error值

if ($error == UPLOAD_ERR_OK) {

$uploadfile_tmp = $_FILES['sendfile']['tmp_name'][$key];

$uploadfile = \"大众$store_dir\公众. basename($_FILES['sendfile'][\公众name\"大众][$key]);

move_uploaded_file( $uploadfile_tmp, $uploadfile );//利用循环移动上传所有文件,从而实现对文件的保存

}

}

print '$_FILES=';

print_r($_FILES);//打印$_FILES数组信息

print \"大众<pre>\"大众;

?>

结果:

标签:

相关文章

介绍白点控制之路,从原理到方法

白点,作为生活中常见的现象,无处不在。对于如何控制白点,许多人却感到困惑。本文将从原理出发,探讨白点的控制方法,并结合实际案例,为...

PHP教程 2025-01-03 阅读1 评论0

介绍直播王者,如何开启你的电竞直播之旅

随着电竞产业的蓬勃发展,越来越多的年轻人投身于电竞直播行业。王者荣耀作为一款备受欢迎的MOBA手游,吸引了大量玩家和观众。如何开启...

PHP教程 2025-01-03 阅读1 评论0