⑴ html表单实现文件上传,通过php处理后怎么在原来html中显示文件信息
如果你使用原生的PHP,没有使用任何模板、框架。那么必须先手动包含一下文件,然后在进行输出。没明白可以继续问我。
⑵ php上传图片文件常用的几个方法
你好,要先建立一个html代码
<formaction="upload_file.php"method="post"enctype="multipart/form-data"><labelfor="file">Filename:</label><inputtype="file"name="file"id="file"/><br/><inputtype="submit"name="submit"value="Submit"/></form>
然后创建upload_file文件用$_FILE判断文件,下面是判断文件的具体信息
$_FILES["file"]["name"] – 被上传文件的名称
$_FILES["file"]["type"] – 被上传文件的类型
$_FILES["file"]["size"] – 被上传文件的大小,以字节计
$_FILES["file"]["tmp_name"] – 存储在服务器的文件的临时副本的名称
$_FILES["file"]["error"] – 由文件上传导致的错误代
希望对你有帮助!
⑶ php中上传文件的方法有多少种
一、传统的php写的上传类。写一个php的上传类,这个方法用到的知识全部是php的,而且技术的难点也不多。<form method="post" action="upload.php" enctype="multipart/form-data"><table border=0 cellspacing=0 cellpadding=0 align=center width="100%"> <input type="hidden" name="MAX_FILE_SIZE" value="2000000">//隐藏域。这里name必须设置成MAX_FILE_SIZE,其值就是上传文件的最大长度,单位是B,这里我限制成2M<input name="file" type="file" value="浏览" >< input type="submit" value="上传" name="B1"></table></form> 服务端利用php的$_FILES['file']['name']来获取文件后缀名,具体的代码自己查找资料看看,这里就不多说了。总结;这个方法可以用来上传小于2M的文件或者是图片,基本的功能可以实现。二、利用uploadify插件这个是利用jQuery的上传插件,上传可以带进度条,容易配置。总结:可以上传一些大文件,和图片,而且带进度条,可以多文件上传,在WEB中会经常用。三、利用网络的webuploadWebUploader 是由 Bai FEX 团队开发的一款以 HTML5 为主,FLASH 为辅的现代文件上传组件。在现代的浏览器里面能充分发挥 HTML5 的优势,同时又不摒弃主流IE浏览器,沿用原来的 FLASH 运行时,兼容 IE6+,iOS 6+, Android 4+。采用大文件分片并发上传,极大的提高了文件上传效率。四、swfupload的插件这是一个jquery的上传插件,功能也非常强大,开发也比较容易,网上有很多的资料,可以自行查找。
⑷ PHP如何上传文件
$f_type=strtolower("swf,rar,jpg,zip,7z,iso,gif,exe,rmvb");//设置可上传的文件类型 if (!is_uploaded_file($file) || ($_FILES['photoupload']['size'] > 20000 * 1024 * 1024) ) { $error = 'Please upload only files smaller than 2Mb!'; } $f_name=$_FILES['photoupload']['name']; $tmp_type=substr(strrchr($f_name,"."),1);//获取文件扩展名 $tmp_type=strtolower($tmp_type); if(!stristr($f_type,$tmp_type)){ $error="对不起,不能上传格式为:".$tmp_type."的文件:".$f_name; } if(move_uploaded_file($_FILES['photoupload']['tmp_name'], $uploadfile)){ $result['result'] = 'success'; $result['size'] =$f_name."文件上传成功";}else{$result['result'] = 'failed'; $result['error'] =$f_name."上传失败";}
⑸ 怎么样通过php使用html5实现多文件上传
<formaction=""enctype="multipart/form-data"method="post"><inputtype="file"name="file[]"multiple/><inputtype="submit"value="submit"/></form>
⑹ 求php怎么实现web端上传超大文件
加大PHP上传文件大小的限制,是通过修改PHP.INI文件来实现,但是这个支持是有限度的,因为WEB协议本为下载而生,超大文件的上传是FTP的专利。PHP用超级全局变量数组$_FILES来记录文件上传相关信息的。1.file_uploads=on/off 是否允许通过http方式上传文件2.max_execution_time=30 允许脚本最大执行时间,超过这个时间就会报错3.memory_limit=50M 设置脚本可以分配的最大内存量,防止失控脚本占用过多内存,此指令只有在编译时设置了–enable-memory-limit标志的情况下才生效4.upload_max_filesize=20M 允许上传文件的最大大小,此指令必须小于post_max_size5.upload_tmp_dir 上传文件临时存放目录6.post_max_size=30M 允许post方式可以接受最大大小$_FILES['myFile']['name'] 客户端上次文件的原始名称。 $_FILES['myFile']['type'] 文件的 MIME 类型,需要浏览器提供该信息的支持,例如"image/gif"。 $_FILES['myFile']['size'] 已上传文件的大小,单位为字节。 $_FILES['myFile']['tmp_name'] 文件被上传后在服务端储存的临时文件名,一般是系统默认。可以在php.ini的upload_tmp_dir 指定,但 用 putenv() 函数设置是不起作用的。 $_FILES['myFile']['error'] 和该文件上传相关的状态码。['error'] 是在 PHP 4.2.0 版本中增加的。下面是它的说明:(它们在PHP3.0以后成了常量) UPLOAD_ERR_OK 值:0; 没有错误发生,文件上传成功。UPLOAD_ERR_INI_SIZE 值:1; 上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。 UPLOAD_ERR_FORM_SIZE 值:2; 上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。 UPLOAD_ERR_PARTIAL 值:3; 文件只有部分被上传。 UPLOAD_ERR_NO_FILE 值:4; 没有文件被上传。 值:5; 上传文件大小为0. 文件被上传结束后,默认地被存储在了临时目录中,这时您必须将它从临时目录中删除或移动到其它地方,如果没有,则会被删除。也就是不管是否上传成功,脚本执行完后临时目录里的文件肯定会被删除。附:修改PHP上传文件大小限制的方法1. 一般的文件上传,除非文件很小.就像一个5M的文件,很可能要超过一分钟才能上传完.但在php中,默认的该页最久执行时间为 30 秒.就是说超过30秒,该脚本就停止执行.这就导致出现 无法打开网页的情况.这时我们可以修改 max_execution_time在php.ini里查找max_execution_time默认是30秒.改为max_execution_time = 00表示没有限制2. 修改 post_max_size 设定 POST 数据所允许的最大大小。此设定也影响到文件上传。php默认的post_max_size 为2M.如果 POST 数据尺寸大于 post_max_size $_POST 和 $_FILES superglobals 便会为空.查找 post_max_size .改为post_max_size = 150M3. 很多人都会改了第二步.但上传文件时最大仍然为 8M.为什么呢.我们还要改一个参数upload_max_filesize 表示所上传的文件的最大大小。查找upload_max_filesize,默认为8M改为upload_max_filesize = 100M另外要说明的是,post_max_size 大于 upload_max_filesize 为佳.
⑺ 如何让PHP上传超大文件
1.在php.ini修改上传文件的大小打开php.ini,首先找到(前4个够用了)file_uploads = on ;是否允许通过HTTP上传文件的开关。默认为ON即是开upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹upload_max_filesize = 8m ;望文生意,即允许上传文件大小的最大值。默认为2Mpost_max_size = 8m ;指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M一般地,设置好上述四个参数后,上传<=8M的文件是不成问题,在网络正常的情况下。但如果要上传>8M的大体积文件,只设置上述四项还一定能行的通。进一步配置以下的参数max_execution_time = 600 ;每个PHP页面运行的最大时间值(秒),默认30秒max_input_time = 600 ;每个PHP页面接收数据所需的最大时间,默认60秒memory_limit = 8m ;每个PHP页面所吃掉的最大内存,默认8M把上述参数修改后,在网络所允许的正常情况下,就可以上传大体积文件了max_execution_time = 600max_input_time = 600memory_limit = 32mfile_uploads = onupload_tmp_dir = /tmpupload_max_filesize = 32mpost_max_size = 32m2如果还是解决不了. nginx修改上传文件大小限制在 /etc/nginx/conf.d/下 找到你的配置文件 在location中加上这样一段代码location / { root html; index index.html index.htm; client_max_body_size 5000m; } 切记!!!修改完配置文件要重启!重启!重启!
⑻ 怎样用html5实现拖拽上传文件
,首先要判断拖入的文件是否符合要求,包括图片类型、大小等,然后获取本地图片信息,实现预览,最后上传。$(function(){ …接上部分 var box = document.getElementById('drop_area'); //拖拽区域 box.addEventListener("drop",function(e){ e.preventDefault(); //取消默认浏览器拖拽效果 var fileList = e.dataTransfer.files; //获取文件对象 //检测是否是拖拽文件到页面的操作 if(fileList.length == 0){ return false; } //检测文件是不是图片 if(fileList[0].type.indexOf('image') === -1){ alert("您拖的不是图片!"); return false; } //拖拉图片到浏览器,可以实现预览功能 var img = window.webkitURL.createObjectURL(fileList[0]); var filename = fileList[0].name; //图片名称 var filesize = Math.floor((fileList[0].size)/1024); if(filesize>500){ alert("上传大小不能超过500K."); return false; } var str = "<img src='"+img+"'><p>图片名称:"+filename+"</p><p>大小:"+filesize+"KB</p>"; $("#preview").html(str); //上传 xhr = new XMLHttpRequest(); xhr.open("post", "upload.php", true); xhr.setRequestHeader("X-Requested-With", "XMLHttpRequest"); var fd = new FormData(); fd.append('mypic', fileList[0]); xhr.send(fd); },false); });
⑼ php + js实现多文件上传问题
我所知目前有三种方式可以实现你的要求:
基于iframe,无进度显示,不推荐。记得有个国外的dhtmlx框架里有个多文件upload组件
基于flash,多文件,可以显示上传进度。这个常用的就是swfupload和其衍生版jquery.uploadify
基于html5,多文件,可以显示上传进度。如果你的目标浏览器支持的话推荐使用,使用html5的file/filereaderAPI即可实现纯Html+js的多文件可视进度上传