PHP文件下载函数(从MySQL提取文件路径)

<?php

header("Content-type: text/html;charset=utf-8");

require("include/MysqlConn.php");

// 获得ID

$id=$_GET['id'];

// 判断是否有参数

if (!$id)

{

    die ("缺少参数!");

}

// 文件保存地址

$FilePath='upload/download/';

// 文件名称

$FileName='';

// 下载文件另存名称

$SaveFileName='';

// 连接数据库

$conn=mysql_connect($Db_Server,$Db_User,$Db_Pwd);

// 判断连接是否成功

if (!$conn)

{

    die("不能连接数据库,错误是: " . mysql_error());

}

// 数据库输出编码,应该与你的数据库编码保持一致。建议用UTF-8国际标准编码

mysql_query("set names 'utf8'");

// 打开数据库

$db_selected = mysql_select_db($Db_Name, $conn);

// 判断打开是否成功

if (!$db_selected)

{

    die ("不能打开数据库,错误是: " . mysql_error());

}

// SQL语句

$sql ="select * from download WHERE download_id='".$id."'";

// 查询SQL语句

$result = mysql_query($sql,$conn);

// 循环读取数据

while($row = mysql_fetch_array($result))

{

// 文件名称

$FileName=$row['Download_FileName'];

// 下载文件名称

$SaveFileName=$row['Download_SaveFileName'];

}

// 使用完毕关闭数据库连接

mysql_close();

// 下载文件函数

function DownloadFile($url,$SaveFileName) 

{  

$FileName=$url;

    $file=fopen($FileName,"rb");

    Header("Content-type:application/octet-stream");

    Header("Accept-Ranges:bytes");

    Header("Content-Disposition:attachment;filename=".$SaveFileName);

$contents="";

// 读取文件

    while (!feof($file))

    {  

    $contents.=fread($file,8192);

    }  

    echo $contents;

    // 关闭文件

    fclose($file);

}

// 文件下载网址

$url=$FilePath.$FileName;

// 判断是否有文件

if (file_exists($url)) 

{

// 下载文件函数

DownloadFile($url,$SaveFileName);

}

?>

--------------------------------------

我有几张阿里云幸运券分享给你,用券购买或者升级阿里云相应产品会有特惠惊喜哦!把想要买的产品的幸运券都领走吧!快下手,马上就要抢光了。 

https://promotion.aliyun.com/ntms/act/ambassador/sharetouser.html?userCode=6evata1e&utm_source=6evata1e

时间: 2024-09-17 09:30:52

PHP文件下载函数(从MySQL提取文件路径)的相关文章

dom-用JQ提取文件路径问题

问题描述 用JQ提取文件路径问题 我在eclipse中用jquery $("#filePath").val() 在myeclipse中用DOM document.getelementbyid("filePath").value中 提取同一个图片的路径不一样啊.!!! 其中myeclipse中提取的路径是对的. 求教为什么不一样. eclipse 中 jQ 提取的文件路径为C:fakepath[1{QOH~1_(TV`8@EAXYX@ED.jpg myeclipse中

ASP.NET提供文件下载函数(支持大文件、续传、速度限制、资源占用小)

asp.net|函数|速度|下载 // 输出硬盘文件,提供下载  // 输入参数 _Request: Page.Request对象,  _Response: Page.Response对象, _fileName: 下载文件名, _fullPath: 带文件名下载路径, _speed 每秒允许下载的字节数  // 返回是否成功  public static bool ResponseFile(HttpRequest _Request,HttpResponse _Response,string _f

怎样查看mysql pid文件路径 文件位置

当MySQL实例启动时,会将自己的进程ID写入一个文件中--该文件即为pid文件.该文件可由参数pid_file控制,默认位于数据库目录下,文件名为主机名.pid: mysql> show variables like 'pid_file'\G; *************************** 1. row *************************** Variable_name: pid_file        Value: /usr/local/mysql/data/xen

linux修改mysql数据库文件的路径_Mysql

mysql更改数据文件的存放路径感觉直接把/etc/my.cnf中的datadir改一下重启一下服务就行,但是从网上搜了n多资料,大部分都是更改my.cnf中的datadir及sock及启动脚本/etc/rc.d/init/mysqld中的datadir,按照网上提供的方案好像都不行,有没有大侠给个肯定的说法 其实只是要做两件事情:一个是mv一下socket和data的目录.也就是将其从原来的目录移动到指定的位置:第二,就是修改配置文件,假如直接是用mysql/bin下面的命令启动的话,直接改m

mysql数据库存储路径更改 数据文件位置

mysql数据库存储路径更改  使用了VPS一段时间之后发现磁盘空间快满了.本人的VPS在购买的时候买了500gb的磁盘,提供商赠送了20GB的高性能系统磁盘.这样系统就有两个磁盘空间了.在初次安装mysql 的时候将数据库目录安装在了系统盘.(第一个磁盘)使用了一段时间之后数据库存储量变大,快将20GB的存放空间占满了.因此必须将存放数据空间换地方了.嘿嘿下面是简单的操作了,不合理之处还请大侠们指点. 操作步骤:     1.检查mysql数据库存放目录     mysql -u root -

给PHPLIB模版加两个函数,解决模版文件内图片、CSS和JS包括路径问题

加了两个函数,用法和原来的一样,具体看代码里面说明.只是在声明的时候要指定图片的路径,默认为当前目录,也就是PHP文件所在目录.注意的是图片目录要相对于模版文件目录的,模版文件和图片文件不能在同一级目录下. <?php /* * Session Management for PHP3 * * (C) Copyright 1999-2000 NetUSE GmbH *                    Kristian Koehntopp * * $Id: template.inc,v 1.5

How to:如何在调用外部文件时调试文件路径(常见于使用LaunchAppAndWait和LaunchApp函数)

原文:How to:如何在调用外部文件时调试文件路径(常见于使用LaunchAppAndWait和LaunchApp函数) IS里调用外部文件的时候,一般都是用LaunchAppAndWait函数,比如 if(LaunchAppAndWait (SRCDISK^"jdk\\jdk-6u4-windows-i586-p.exe","", LAAW_OPTION_WAIT)<0)then MessageBox ("You haven't installe

Linux中更改mysql数据文件存储路径

很多时候,mysql的数据会非常大,数据默认放在/var/lib/mysql,由于/var所划分的空间不够大,所以我们需要将mysql数据存放路径修改一下,放到大分区里面,以便可以应付mysql数据增长. 1.设置新的存放路径 mkdir -p /data/mysql 2.复制原有数据 cp -R /var/lib/mysql/* /data/mysql 3.修改权限 chown -R mysql:mysql /data/mysql 4.修改配置文件 vi /etc/mysql/my.cnf d

php从完整文件路径中分离文件目录和文件名的方法

 这篇文章主要介绍了php从完整文件路径中分离文件目录和文件名的方法,涉及php中basename及dirname函数的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了php从完整文件路径中分离文件目录和文件名的方法.分享给大家供大家参考.具体分析如下: basename()函数用于从路径中获得文件名 dirname()函数用于从路径中获得文件目录 ? 1 2 3 4 5 <?php $full_name = 'c:wampphpphp.ini'; $base = b