1. php中怎么实现文件下载功能
两种方法:
1.直接做个超链接,地址为文件的地址
<ahref="文件地址">下载</a>2.流输出
<?php
$file=fopen('文件地址',"r");
header("Content-Type:application/octet-stream");
header("Accept-Ranges:bytes");
header("Accept-Length:".filesize('文件地址'));
header("Content-Disposition:attachment;filename=文件名称");
echofread($file,filesize('文件地址'));
fclose($file);
?>推荐第二种
因为第一种方法只能下载浏览器不能解析的文件,比如rar啊,脚本文件之类。如果文件是图片或者txt文档,就会直接在浏览器中打开。
而第二种方法是直接输出的文件流,不存在上述问题。
你可以检查一下你传值过来的路径是否正确,还有,流输出后面不要再进行任何操作了。
拓展资料:
集成开发环境是一种集成了软件开发过程中所需主要工具的集成开发环境,其功能包括但不仅限于代码高亮、代码补全、调试、构建、版本控制等。一些常见的PHP IDEs如下:
Zend Studio:商业版,Zend官方出品,基于eclipse
Eclipsewith PDT:免费
Coda:商业版,针对Mac用户
NetBeans:免费,功能强大
PHP Storm:商业版
AptanaStudio:免费
PhpEd:商业版
KomodoIDE/Edit:IDE为商业版,Edit可免费使用
Adobe Dreamweaver:商业版
除去集成开发环境,具备代码高亮功能的常见文本编辑器因其轻巧灵活也常被选作开发工具,例如:Notepad++、Editplus、SublimeText、Everedit(国人开发)等等。
PHP的特性包括:
1. PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。
2. PHP可以比CGI或者Perl更快速的执行动态网页——动态页面方面,与其他的编程语言相比,
PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成htmL标记的CGI要高许多;
PHP具有非常强大的功能,所有的CGI的功能PHP都能实现。
3. PHP支持几乎所有流行的数据库以及操作系统。
4. 最重要的是PHP可以用C、C++进行程序的扩展!
参考资料:网络:PHP
2. php上传下载系统怎么实现
随便下个开源的上传文件程序 看看代码即可
核心函数 COPY
PHP文件上传的原理及实现
利用php的文件函数来实现上传
这段代码分为两个文件,一个为upload.html,一个是upload.php
upload.html
<form enctype="multipart/form-data" action="upload.php" method="post">
<input type="hidden" name="max_file_size" value="100000">
<input name="userfile" type="file">
<input type="submit" value="上传文件">
</form>
其中,请注意
值得注意的是文件upload.html中表单选项 MAX_FILE_SIZE 的隐藏值域,通过设置其Value(值)可以限制上载文件的大小。
MAX_FILE_SIZE 的值只是对浏览器的一个建议,实际上它可以被简单的绕过。因此不要把对浏览器的限制寄希望于该值。实际上,PHP 设置中的上传文件最大值,是不会失效的。但是最好还是在表单中加上 MAX_FILE_SIZE,因为它可以避免用户在花时间等待上传大文件之后才发现该文件太大了的麻烦。
upload.php
$f=&$HTTP_POST_FILES['Myfile'];
$dest_dir='uploads';//设定上传目录
$dest=$dest_dir.'/'.date("ymd")."_".$f['name'];//设置文件名为日期加上文件名避免重复
$r=move_uploaded_file($f['tmp_name'],$dest);
chmod($dest, 0755);//设定上传的文件的属性
或者
<?($_FILES[MyFile][tmp_name],$_FILES[MyFile][name]);?>
然后再COPY的同时连下数据库把要入的值入库即可
再做一个查询页面读取数据库
3. php 批量大文件上传下载如何实现
1.首先还是查看环境是否支持超大容量上传的支持,500M以上的文件通常为视频文件;
2.即然他要上传500M以上的文件,估计服务器性能必定非同凡想,所以暂可不考虑服务器硬件配置问题,但一定要考虑到网速问题,建议1000M以上出入速率,如少于这个数,你可以放弃这个方案了;
3.前面硬件都过关了,但程序也要加强了,一下上传500M是哪种语言都不能实现的,唯一解决方案,文件切割,如迅雷下载原理一样(采用续点上传),分成若干小块,然后全部上传完毕以后,再进行文件合成。
4.至于PHP的文件切割,切割后上传,以及文件合并,此类代码网上有许多,楼主可查询并选择适合你的代码,实现你的功能!
4. php代码 网站编程 实现上传和下载多个不同类型文件功能
写这样的代码没有多少难度。其实文件类型与上传和下载真的没有关系,无论什么类型都是相同的代码上传和下载。在我看来,你现在难题在于一个字段(例如三维图纸)有多个文件,这使得上传和下载的控制代码非常繁杂。有一个简便的建议,就是一类文件(一个数据库字段)只允许用户上传一个文件,用户操作中必须把此类文件进行打包后上传,下载后也需要解包才能使用,这样你的代码就变得简单多了。
如果你一定需要一类文件允许上传多个,也是有办法做到的,多个文件的名称使用符号连接为字符串后保存到数据库里面,例如a.jpg|b.jpg|c.jpg这样的三个文件用|分开,上传的页面使用JS代码控制增加<FORM>的<INPUT TYPE=FILE>域。
最完美的实现上传文件夹,不过那不是PHP能实现的,需要编写网页控件(本质上是在客户端运行的代码),兼容性也差。
写程序可以理解为织毛衣,把一根毛线弄成一件衣服是非常耗费时间的,如果你自己编织的时候遇到哪朵花怎么设计的问题,大家非常乐意帮你出主义,如果你是想有人整件毛衣帮你织好,这可能要靠缘分了。
5. 网上下载的php源码如何上传安装,求详细教程!
一个好的源码和用心的开发者是不会让你提出使用这个教程问题的,一般都会有详细的说明文档进行介绍。
高质量带说明文档的源码获取方法:(先下载,看源码需求,再搭建环境很重要):
1、打开网络,搜索“PopMars-专注共享资源 – 免费教程”
2、打开其中名字为 “PopMars-专注共享资源 – 免费教程|Php源码免费下载|IOS App应用...” 的网站
3、里面可以找到大量的php源码
准备:查看源码里面的说明文件,源码运行的基本情况需求。在本机安装相应的环境即可运行。例如PHP7.0/Mysql 5.5等等。关于本机的环境你可以使用类似xampp的一键部署包
6. 怎样把下载的PHP建站系统上传到局域网上的WEB服务器上
1、局域网与互联网没有区别,是一样的操作,最多就是局域网只可以使用IP,不能使用域名。
2、安好就够了。
3、用FTP可以,直接用U盘拷贝过去也可以。把PHP文件拷贝到WEB服务器网站主目录下,数据库需要进行导入,或者拷贝到MYSQL\DATA文件夹下,打开你下载的压缩包,里面应该有说明。
7. php制作文件上传系统需要另外安装东西吗
asp 需要fso支持。对asp的知道点皮毛。
php不需要安装组件,内置的几个函数就搞定了。
前端:
<form action="upload.php" enctype="multipart/form-data" method="post">
<input type="hidden" name="MAX_FILE_SIZE" value="2000000"/>
<input name="file" type="file" id="file" class="upload"/>
<input type="submit" name="Submit" value="<?=$lang["submit"]?>" style="border:1px #999999 solid;vertical-align:middle;height:18px"/>
</form>
提交处理:
move_uploaded_file($_FILES['file']['tmp_name'],$uploadfile);
8. php如何实现文件上传啊
PHP一般使用POST方法上传文件,下面是一个简单的文件上传示例,里面有相关的注释:
up.htm文件:
----------
<html>
<head>
<metahttp-equiv="Content-Type"content="text/html;charset=gb2312">
<title>UpSample</title>
</head>
<body>
<formaction="up.php"method="post"enctype="multipart/form-data">
<!--备注:表单中enctype="multipart/form-data"的意思,是设置表单的MIME编码。默认情况,这个编码格式是application/x-www-form-urlencoded,不能用于文件上传;只有使用了multipart/form-data,才能完整的传递文件数据,进行下面的操作,并且method要设置为"post"-->
File:<br/>
<inputtype="file"name="upfile"size="30"><br/>
<!--上传框要设置type="file"-->
<br/>
<inputtype="submit"value="Upload">
</form>
</body>
</html>
----------
up.php文件
----------
<?php
if(is_uploaded_file($_FILES["upfile"]["tmp_name"])){
//如果有文件上传
//is_uploaded_file--判断文件是否是通过HTTPPOST上传的,返回布尔值
//$_FILES['upfilename']['...'],其中的'upfilename'即为上传框的name属性
//$_FILES['upfile']['tmp_name']--文件被上传后在服务端储存的临时文件名,一般是系统默认
if(!eregi('pdf',$_FILES['upfile']['type'])){
//我们这里假设你要上传一个pdf文件
//if(!eregi('pdf',$_FILES['upfile']['type']))这个是判断上传文件类型的,是不是pdf文件,当然,若是想判断是否是jpg文件的话,将pdf改成jpg就可以了,即if(!eregi('jpg',$_FILES['upfile']['type']))
//$_FILES['upfile']['type']是文件的MIME类型,如果浏览器提供此信息的话。例如“image/gif”
echo'TheuploadedfileisnotanpdfFile!Pleaseuploadarightfile!';
}else{
$filename=$_FILES['upfile']['name'];
//$filename=$_FILES['upfile']['name'],这里是指定上传后的文件名,这里使用的仍是原来的文件名字,($_FILES['upfile']['name']是原始文件的名字)
if(move_uploaded_file($_FILES["upfile"]["tmp_name"],dirname(__FILE__)."/upload_file/".$filename)){
//这里就是上传文件
//dirname(__FILE__)."/upload_file/".$file_name--指定上传的目标文件,假设你要上传的目标文件夹upload_file是和当前文件(upload.php)在同一文件夹下
//chmod(dirname(__FILE__)."/upload_file/".$file_name,0444);
//上面注释掉的是用来改变上传后文件的属性,444即只有执行和读的权限(看情况加上)
echo$_FILES["upfile"]["name"]."uploadedsucceed!!!";
}else{
echo"Can'tupload!!!";
}
}
}else{
echo"Fileisnotselected";
}
//需要注意的:
/*
在你的up.php同级目录下建立upload_file文件夹,来存放上传的文件
在上传之前要看一下php的配置文件:php.ini中的三处设置
1.是否允许文件上传:(file_uploads=On)
2.文件上传的最大size:(upload_max_filesize)
3.post的最大size(post_max_size)这个大小设置成和uplod_max_filesize一样大或比uplod_max_filesize大
*/
/*
这只是很简单的一个文件上传的例子,为了帮助理解,只是判断了一下上传文件的类型,还可以使用if语句来判断上传文件的大小($_FILES['upfile']['type'])),并进行提示控制等,相关可以查阅$_FILE['upfile']数组的各个值分别代表什么
*/
?>
----------
可以看看php100里面的视频,其中一节就是介绍文件上传的.:)