仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1299|回复: 19
打印 上一主题 下一主题

[学习教程] PHP编程:在PHP.MVC中上传文件

[复制链接]
跳转到指定楼层
#
发表于 2015-2-3 23:57:24 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
兴趣可能会慢慢消亡,所以适当培养兴趣会激发自己无线的乐趣,有了乐趣,编程有啥难的。     PHP.MVC官方网站上引见的是利用PEAR::HTTP_Upload 包来处置上传,而我只是用原始的体例来停止上传的处置,次要是为了申明在MVC的框架中如何上传文件.今后我能够会利用PEAR::HTTP_Upload 包来做.
  1.翻开phpmvc-config.xml,在<phpmvc-config>标签中加上:
<controller maxFileSize="1048576" tempDir="C:\www\upload\">
</controller>
  个中maxFileSize为上传文件巨细的最大值,单元是字节,上传的文件会用一个一时的名字寄存在php.ini所设置装备摆设的地位,咱们固然要把这些文件另存到咱们本人的目次中,tempDir就是这个目次.
  2.保留文件.如今写一个php页,外面写一个上传文件的表单:
<form enctype='multipart/form-data' method='POST' action='Main.php?do=upload'>
    <input type='file' name='file'><br/>
    <input name='submit_files' value='上传' type='submit'>
</form>
  个中enctype必定要设定为multipart/form-data
  3.写一个ActionForm类,好比叫UploadForm,这个类和通俗的ActionForm迥然不同,但咱们要在个中的validate办法中完成操作上传的文件.起首要失掉xml设置装备摆设文件中的值:
$appConfig =& $this->actionServer->getApplicationConfig($request);
$controllerConfig =& $appConfig->getControllerConfig();
$tmpFileDir = $controllerConfig->getTempDir();
$maxFileSize= intval($controllerConfig->getMaxFileSize(),10);
  必定要把文件巨细谁人用intval函数转换成整形数据.
  接着失掉咱们上传的文件信息:
$upload_file=$_FILES['file']['tmp_name'];
$upload_file_name=$_FILES['file']['name'];
$upload_file_size=intval($_FILES['file']['size'],10);
  ['file']是上传表单的名字.tmp_name,name和size分离是这个文件的一时文件地址(包含文件名),源文件名和巨细.一样巨细也需求转换为整形
  上面判别上传的文件是不是到达咱们的巨细请求:
if($upload_file_size > $maxFileSize)
{
//这里做毛病处置
}
  最初拷贝咱们的文件到目标目次:
if (!copy($upload_file,$tmpFileDir.$upload_file_name))
{
//这里做复制掉败处置
}
  4.上面是Action类,这个类就和通俗的Action一样,外面可以做一些文件上传后的处置,也能够直接重定向到上传胜利的页面.
  5.将你的ActionForm和Action设置装备摆设到phpmvc-config.xml中去,运转一下尝尝吧!
给你的建议是,有些最常用的语句是需要记住的 比如if for while这些、其他的一般语句你只要知道有这个函数或者有这个功能就可以了,当你用的时候你可以凭借记忆搜索就可以了。
admin 该用户已被删除
19#
发表于 2015-6-28 23:53:35 | 只看该作者
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
爱飞 该用户已被删除
18#
发表于 2015-6-28 02:18:06 | 只看该作者
最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。
精灵巫婆 该用户已被删除
17#
发表于 2015-6-27 23:21:53 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
柔情似水 该用户已被删除
16#
发表于 2015-4-21 14:25:19 | 只看该作者
在我安装pear包的时候老是提示,缺少某某文件,才发现 那群extension 的排列是应该有一点的顺序,而我安装的版本的排序不是正常的排序。没办法我只好把那群冒号加了上去,只留下我需要使用的扩展。
第二个灵魂 该用户已被删除
15#
发表于 2015-4-21 08:20:28 | 只看该作者
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
若天明 该用户已被删除
14#
发表于 2015-4-21 00:32:48 | 只看该作者
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
深爱那片海 该用户已被删除
13#
发表于 2015-4-15 10:31:42 | 只看该作者
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
再现理想 该用户已被删除
12#
发表于 2015-4-3 01:12:07 | 只看该作者
没接触过框架的人,也不用害怕,其实框架就是一种命名规范及插件,学会一个框架其余的框架都很好上手的。
飘灵儿 该用户已被删除
11#
发表于 2015-4-1 03:10:56 | 只看该作者
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
灵魂腐蚀 该用户已被删除
10#
发表于 2015-3-24 09:55:30 | 只看该作者
首先我是坚决反对新手上来就用框架的,因为对底层的东西一点都不了解,造成知识上的真空,会对以后的发展不利。我的观点上手了解下框架就好,代码还是手写。当然啦如果是位别的编程语言的高手的话,这个就另当别论啦。
小女巫 该用户已被删除
9#
发表于 2015-3-21 19:31:30 | 只看该作者
说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年  具体的记不清啦,囧。
变相怪杰 该用户已被删除
8#
发表于 2015-3-15 18:44:11 | 只看该作者
开发工具也会慢慢的更专业,每个公司的可能不一样,但是zend studio是个大伙都会用的。
兰色精灵 该用户已被删除
7#
发表于 2015-3-11 04:50:36 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
海妖 该用户已被删除
6#
发表于 2015-3-8 17:23:23 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
简单生活 该用户已被删除
5#
发表于 2015-3-6 17:19:06 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
谁可相欹 该用户已被删除
地板
发表于 2015-2-28 19:49:00 | 只看该作者
我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能:
金色的骷髅 该用户已被删除
板凳
发表于 2015-2-10 04:36:26 | 只看该作者
其实也不算什么什么心得,在各位大侠算是小巫见大巫了吧,望大家不要见笑,若其中有错误的地方请各位大虾斧正。
分手快乐 该用户已被删除
沙发
发表于 2015-2-9 18:44:14 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
冷月葬花魂 该用户已被删除
楼主
发表于 2015-2-4 07:18:59 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 21:33

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表