关于PHP上传文件时配置 php.ini 中的 upload_tmp_dir
在《PHP 5.3 入门经典》9.6.3 的试一试中(P235),给出了一个上传文件的例子,这里的文件格式为jpeg图片(image/jpeg)。如果之前未配置 php.ini 中的 upload_tmp_dir 参数,则会出现上传失败的提示信息。看如下代码片段
if(isset($_FILES["photo"])) and $_FILES["photo"]["error"] == UPLOAD_ERR_OK)
该判断语句中的条件如果为真,则继续。而此时 $_FILES["photo"]["error"] 值为6,UPLOAD_ERR_OK值为0(表示上传成功)。
下面列出 $_FILES["photo"]["error"] 不同值所代表含义:
其值为 0,没有错误发生,文件上传成功。 其值为 1,上传的文件超过了 PHP.ini 中 upload_max_filesize 选项限制的值。 其值为 2,上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。 其值为 3,文件只有部分被上传。 其值为 4,没有文件被上传。 其值为 6,找不到临时文件夹。php 4.3.10 和 PHP 5.0.3 引进。 其值为 7,文件写入失败。PHP 5.1.0 引进。
即找不到临时文件夹,一般来说是因为配置php.int中的 upload_tim_dir 或者其值配置不正确。
网上例子一般推荐 upload_tim_dir = "C:\Windows\Temp",实际上因为安全/权限等方面原因,依然会报错(6)。
故作者修改其路径为其它,比如 upload_tim_dir = "C:\temp",此时程序即可正常运行。有些博主提及需要将 "C:\temp" 文件夹 Users 组/用户 添加“写入”权限。而作者测试时发现不修改也可以,可能与机器/操作系统环境有关。
tips:upload_tim_dir = "C:\Windows\Temp" 中路径字符串将 "\" 替换为 "/" 或两者混用没有任何影响。(PHP 7.1.6)
关于PHP上传文件时配置 php.ini 中的 upload_tmp_dir的更多相关文章
- 利用struts2上传文件时,如果文件名中含有-符号,那么会出错
利用struts2上传文件时,如果文件名中含有-符号,那么会出错 报错如下: HTTP Status 500 - C:\Program Files\Apache Software Foundation ...
- Webform之FileUpload(上传按钮控件)简单介绍及下载、上传文件时图片预览
1.FileUpload上传控件:(原文:http://www.cnblogs.com/hide0511/archive/2006/09/24/513201.html) FileUpload 控件显示 ...
- springBoot上传文件时MultipartFile报空问题解决方法
springBoot上传文件时MultipartFile报空问题解决方法 1.问题描述: 之前用spring MVC,转成spring boot之后发现上传不能用.网上参考说是spring boot已 ...
- Spring Boot 在接收上传文件时,文件过大异常处理问题
Spring Boot 在接收上传文件时,文件过大时,或者请求过大,spring内部处理都会抛出异常,并且捕获不到. 虽然可以通过调节配置,增大 请求的限制值. 但是还是不太方便. 之所以捕获不到异常 ...
- winScp上传文件时,如何过滤制定文件
在用winScp上传文件时,有些文件不想上传到服务器上.怎么办呢? 比如我希望过滤.svn .git文件和目录怎么操作呢? 第一步:在菜单上选中选项,点击选项. 第二步,点击传输->编辑 第三步 ...
- 上传文件时$_FILES为空的解决方法
上传视频的时候打印$_FILES为空,小的文件就没问题,后来发现是因为传的文件太大, 出现这个问题的原因主要有两个:表单原因或者php设置原因: 1,表单类型: 上传文件的表单编码类型必须设置成 en ...
- IE8上传文件时文件本地路径变成"C:\fakepath\"的问题
转自:http://yunzhu.iteye.com/blog/1116893 在使用<input id="file_upl" type="file" / ...
- 关于form 上传文件时的小问题
平时的form一般写成这样: <form action=" " method="" id="" name=""&g ...
- 在使用 AjaxFileUpload 上传文件时,在项目发布到 iis 后,图片不能预览
在使用 AjaxFileUpload 上传文件时,图片已经上传成功了,在站点没有发布时,可以预览,可是在项目发布到 iis 后,图片就不能预览,在网上找了很多的方案也没解决,最后的解决方案如下: 1 ...
随机推荐
- iOS 钥匙串存储用户数据
参考: http://www.jianshu.com/p/f6d40065bb6c #import <Foundation/Foundation.h> #import <Securi ...
- Jquery mobile动态生成ListView调用刷新方法报错
错误:cannot call methods on listview prior to initialization... 示例: <div data-role="page" ...
- xshell连接虚拟机ubuntu
在ubuntu界面,打开终端terminal,输入: ifconfig 出现如下界面: fb993608316@ubuntu:/$ ifconfig eth0 Link encap:Ethernet ...
- 记自己在spring中使用redis遇到的两个坑
本人在spring中使用redis作为缓存时,遇到两个坑,现在记录如下,算是作为自己的备忘吧,文笔不好,望大家见谅: 一.配置文件 <!-- 加载Properties文件 --> < ...
- 其他综合-使用Xshell远程连接管理Linux实践
使用Xshell远程连接管理Linux实践 1. Xshell整体优化 1)点击 工具 ,然后选择 选项 2)在 常规 选项中,下面的存放路径根据个人爱好修改(可选默认) 3)在 更新 选项中,将 √ ...
- IO复用,AIO,BIO,NIO,同步,异步,阻塞和非阻塞 区别参考
参考https://www.cnblogs.com/aspirant/p/6877350.html?utm_source=itdadao&utm_medium=referral IO复用,AI ...
- Oracle篇 之 查询行及概念
Oracle: s_emp s_dept s_region 行:Row(tuple) 列:Column(attribute) conn:改变用户 Drop:删除用户 drop user bri ...
- HTML-Note
<meta>在 HTML 5 中,有一个新的 charset 属性,它使字符集的定义更加容易. charset character encoding 定义文档的字符编码. e.g. < ...
- centos7下tomcat8.5安装部署与优化
转自:https://www.cnblogs.com/busigulang/articles/8529719.html centos 7 Tomcat 8.5 的安装及生产环境的搭建调优 一 安装to ...
- Qt: 数据库操作;
QT的数据库操作有两种方式: 一) 使用QsqlTableModel类, 可以配合QTableView进行界面显示并进行数据库操作, 这种方法比较方便快捷: 二) 使用原始SQL语言, 利用INSE ...