这个临时目录是用$_FILES['userfile']['tmp_name']获取的
新文件 就是:
新文件目录+文件名
这个自己定义 。。。。。比如 我写个例子
$upfile="D:/aaa/" 目录名
$filename=$_FILES['userfile']['name'] 获取的原文件名
新文件就是 $newfile=$upfile.$filename
用.连接起来。
move_uploaded_file($_FILES['userfile']['tmp_name'],$newfile))
执行之后就会移动的D:/aaa/下面
诊断你的代码真正的错误所在:(1) 打印$_FILES['fileName']['error']看返回什么样的错误,看是否超出了上传文件大小的设置,然后才能在临时文件里找到该文件。(2)找到php.ini文件,配置相关参数,以下可供参考:
扩展
Windows 环境下的修改方法
第一步:修改在php5下POST文件大小的限制
1.编修php.ini
找到:max_execution_time = 30 ,这个是每个脚本运行的最长时间,单位秒,修改为: max_execution_time = 150
找到:max_input_time = 60,这是每个脚本可以消耗的时间,单位也是秒,修改为: max_input_time = 300
找到:memory_limit = 128M,这个是脚本运行最大消耗的内存,根据你的需求更改数值,这里修改为: memory_limit = 256M
找到:post_max_size = 8M,表单提交最大数据为 8M,此项不是限制上传单个文件的大小,而是针对整个表单的提交数据进行限制的。限制范围包括表单提交的所有内容.例如:发表贴子时,贴子标题,内容,附件等…这里修改为: post_max_size = 20M
找到:upload_max_filesize = 2M ,上载文件的最大许可大小 ,修改为: upload_max_filesize = 10M
第二步: Apache环境中的档案上传大小控制
修改位于Apahce目录下的httpd.conf
添加下面内容
LimitRequestBody 10485760
即10M=10*1024*1024,有的文章中提到应改为 600000000
重新启动apache,就可以在设置里看到你要的大小
Linux 环境下的修改方法
修改etc/php.ini
找到 File Uploadsh区域修改以下几个参数: file_uploads = on 是否允许通过HTTP上传文件的开关。默认为ON即是开 upload_tmp_dir 文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹(moodle可以不改) upload_max_filesize = 8m 允许上传文件大小的最大值.
找到 Data Handling区域,修改 post_max_size = 8m 指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M
设上述四个参数后,上传小于8M的文件一般不成问题。但如果上传大于8M的文件,只还得设置以下参数:
在Resource Limits 区域: max_execution_time = 600
每个PHP页面运行的最大时间值(秒),默认30秒 max_input_time = 600
每个PHP页面接收数据所需的最大时间,默认60秒 memory_limit = 8m
每个PHP页面所吃掉的最大内存,默认8M
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)