php的zend framework和smarty的项目中,如何让模板页的表单中上传的图片文件正常保存到服务器?

我在弄的这个php项目中,使用的Zendframe和smarty的平台,模板里的form有文件上传的需求,我使用表单里inputtype=file的形式,把文件post给... 我在弄的这个php项目中,使用的Zendframe 和 smarty的平台,模板里的form有文件上传的需求,我使用表单里input type=file的形式,把文件post给控制器路径index.php?controller=aaa&action=a。
但是结果在控制器aaa里的action=a的阶段,
[file] => Array
(
[name] => 测试营业执照_s1.gif
[type] => image/gif
[tmp_name] => E:\\wamp\\tmp\\php88.tmp
[error] => 0
[size] => 5611
)
找不到临时文件E:\\wamp\\tmp\\php88.tmp,也就无法把它用move_uploaded_file($_FILES['file']['tmp_name'],$uploadfile)这样的形式另存成正式的文件。
但是如果不使用zend framework的机制,只使用smarty,在模板页的表单里把post的路径写成aaa.php的形式,就可以获得临时文件,并保存。请问这是为什么,如果不绕过zendframe的机制该怎么解决呢?
展开
 我来答
刺客李贰叁

2011-07-13 · 小小PHP程序猿一枚!
刺客李贰叁
采纳数:312 获赞数:1005

向TA提问 私信TA
展开全部
看一下.htaccess 文件是不是把对文件的访问重定向了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一个教育知识运营者
2011-07-13 · TA获得超过1258个赞
知道小有建树答主
回答量:1047
采纳率:100%
帮助的人:690万
展开全部
应该是控制器写错路径了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sbtewguw1
2011-07-14
知道答主
回答量:10
采纳率:0%
帮助的人:0
展开全部
我没用过这两个平台,你再问问别人!~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wudipaopao
2011-07-13 · TA获得超过797个赞
知道小有建树答主
回答量:1486
采纳率:0%
帮助的人:802万
展开全部
因为你的路径搞错了
追问
我查了下php手册,发现move_uploaded_file()要检查文件是否是真正上传的。否则什么都不执行。现在正是这样。后来我设置断点调试,跟踪到了这个E:\\wamp\\tmp\\phpXX.tmp文件,把它重命名成phpXX.gif发现它就是个图片,只是move_uploaded_file()出于安全考虑觉得这个文件不是上传上去的。之后我干脆用copy()函数把E:\\wamp\\tmp\\phpXX.tmp复制到我想让保存的路径和文件名,就可以了,郁闷,有可能牺牲了安全性!不知还有啥办法?
追答
复制为tmp文件
真正的文件名 用database 存储起来
读文件的时候再转回来

或者尝试下 用
rename()
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式