求 :PHP实现文件下载功能的代码 首页有两个文本框一个按钮,输入姓名及一串特定的数字,点击按钮自动下载匹配的文件。新人刚学PHP ,大神们帮帮忙 谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 很简单的。你要记住。 打包文件 。rar exe 等一些后缀。 你网页直接访问就会出现下载框了知道了这个。。 你只需要按照自己的要求 拼接 一个有效的 HTTP 链接 就好来。比如 http://127.0.0.1/a.rar 你本地要有这个a.rar 就可以出现下载框了。 $file_name = "10.jpg";//需下载的文件名$file_dir = "./upload/";//下载到目录下$file = fopen($file_dir.$file_name,"r"); //打开文件//输 入 文 件 标 签Header("Content_type:application/octet-stream");Header("Accept-Ranges:bytes");Header("Accept-Length:".filesize($file_dir.$file_name));Header("Content-Disposition:attachment;filename=".$file_name);//输 出 文 件 内 容echo fread($file,filesize($file_dir.$file_name));fclose($file);exit(); 其实我要实现的是 下载文件文件到本地 就是: 输入正确的名称及ID ,如果名称及ID跟数据库里存在的名称ID是匹配的点击按钮后直接下载文件到客户电脑本地,如果不匹配则提示名称或ID错误 新人什么都不懂 我已经告诉你答案了额。比如页面有一个按钮。当你点击触发事件,提交表单数据到后台PHP文件。php处理首先接受变量。 组合。 然后 查询数据库。 对比。 2个组合变量 是否和 数据库 相同。如果相同。则需要下载。 使用 。header函数 直接指向 你需要下载的文件。, 比如你的rar放在。 file文件夹下。直接 http://127.0.0.1/file/文件名.rar 就可以实现下载了。不相同 也可以使用 header 跳转回来。。告诉它错误。。如果你会 。ajax 操作跟这也是一样的。 就根据返回值判断。 这个用ajax做比较好。。答案我已经写的很清楚了。 不懂。 你可以百度。 或者问问同学。。按照这个步骤写能写出来的。。 先从数据库查找你要匹配的id,user,在做下判断,如果匹配就用$file_name = "10.jpg";//需下载的文件名$file_dir = "./upload/";//下载到目录下$file = fopen($file_dir.$file_name,"r"); //打开文件//输 入 文 件 标 签Header("Content_type:application/octet-stream");Header("Accept-Ranges:bytes");Header("Accept-Length:".filesize($file_dir.$file_name));Header("Content-Disposition:attachment;filename=".$file_name);//输 出 文 件 内 容echo fread($file,filesize($file_dir.$file_name));fclose($file);exit(); 大哥。。我还没解决。。你的代码有点难理解,我自己琢磨了个最简单的<?php if(isset($_POST['submit_x'])) { $name = $_POST['username']; $tijianhao = $_POST['usernumber']; $rst = $db->select("post","where name='$name' and tijianhao='$tijianhao'"); if($rst) { $error='成功'; } else{ $error='失败'; }} ?> <form id="form2" name="form2" method="post" action="" onsubmit="return checkform(this)"> <div class="error"><?php echo $error; ?></div> <div class="user">姓 名:<input type="text" name="username" id="username" class="type_user"/></div> <div class="pass">体检号:<input type="text" name="usernumber" id="usernumber" class="type_pass" /></div> <div class="login"><input type="image" name="submit" /></div> <div class="forgetpass"><input type="button" value="登录" name="login" onclick="disp_alert()" class="type_forgetpass"/></div> </form> <?php ?>我的想法是: 输入上面的姓名及体检号 如果与数据库的数据是匹配的,然后点击 <input type="image" name="submit" /> 这个input ,自动下载上面对应的文件 你的想法得通过jquery或者js+ajax来实现. php 实现这种交互性比较强的东西就有短板了,当然提交后查找数据库再返回相应文件也可以.不过总是没那么方便的 问一php读取文件问题! 超链接字体颜色在ie和火狐下不一样,怎么办 【PHP】页面之间传递参数的问题 关于set_time_limit(10); 查询用户回帖的标题和发帖时间 在线等`!!!!! 一个关于php+ajax的文件上传的问题(只是想实现很简单的功能) php 与excel php中的图像处理 FCKeditor1.2.4随风汉化版(GPL协议发放) -- 作者:随风而逝 php 回调接口 急!!! php 能通过一个绝对路径上传图片吗? 如何修改linux下的php.ini文件,使其支持bcmath
你要记住。 打包文件 。rar exe 等一些后缀。 你网页直接访问就会出现下载框了
知道了这个。。 你只需要按照自己的要求 拼接 一个有效的 HTTP 链接 就好来。比如 http://127.0.0.1/a.rar 你本地要有这个a.rar 就可以出现下载框了。
$file_dir = "./upload/";//下载到目录下
$file = fopen($file_dir.$file_name,"r"); //打开文件
//输 入 文 件 标 签
Header("Content_type:application/octet-stream");
Header("Accept-Ranges:bytes");
Header("Accept-Length:".filesize($file_dir.$file_name));
Header("Content-Disposition:attachment;filename=".$file_name);
//输 出 文 件 内 容
echo fread($file,filesize($file_dir.$file_name));
fclose($file);
exit();
其实我要实现的是 下载文件文件到本地 就是: 输入正确的名称及ID ,如果名称及ID跟数据库里存在的名称ID是匹配的点击按钮后直接下载文件到客户电脑本地,如果不匹配则提示名称或ID错误
新人什么都不懂
比如页面有一个按钮。
当你点击触发事件,提交表单数据到后台PHP文件。
php处理
首先接受变量。 组合。 然后 查询数据库。
对比。 2个组合变量 是否和 数据库 相同。
如果相同。
则需要下载。 使用 。header函数 直接指向 你需要下载的文件。, 比如你的rar放在。 file文件夹下。
直接 http://127.0.0.1/file/文件名.rar 就可以实现下载了。
不相同 也可以使用 header 跳转回来。。告诉它错误。。如果你会 。ajax 操作跟这也是一样的。 就根据返回值判断。 这个用ajax做比较好。。
答案我已经写的很清楚了。 不懂。 你可以百度。 或者问问同学。。按照这个步骤写
能写出来的。。
$file_dir = "./upload/";//下载到目录下
$file = fopen($file_dir.$file_name,"r"); //打开文件
//输 入 文 件 标 签
Header("Content_type:application/octet-stream");
Header("Accept-Ranges:bytes");
Header("Accept-Length:".filesize($file_dir.$file_name));
Header("Content-Disposition:attachment;filename=".$file_name);
//输 出 文 件 内 容
echo fread($file,filesize($file_dir.$file_name));
fclose($file);
exit();
if(isset($_POST['submit_x']))
{
$name = $_POST['username'];
$tijianhao = $_POST['usernumber'];
$rst = $db->select("post","where name='$name' and tijianhao='$tijianhao'");
if($rst)
{
$error='成功';
}
else{
$error='失败';
}}
?>
<form id="form2" name="form2" method="post" action="" onsubmit="return checkform(this)">
<div class="error"><?php echo $error; ?></div>
<div class="user">姓 名:<input type="text" name="username" id="username" class="type_user"/></div>
<div class="pass">体检号:<input type="text" name="usernumber" id="usernumber" class="type_pass" /></div>
<div class="login"><input type="image" name="submit" /></div>
<div class="forgetpass"><input type="button" value="登录" name="login" onclick="disp_alert()" class="type_forgetpass"/></div>
</form>
<?php ?>我的想法是: 输入上面的姓名及体检号 如果与数据库的数据是匹配的,
然后点击 <input type="image" name="submit" /> 这个input ,自动下载上面对应的文件