PHP 文件上传功能实现代码
时间:2022-10-10 12:51:39|栏目:PHP代码|点击: 次
个人认为PHP文件的上传和下载的思路差不多一样.也就是在代码中多了一个header语句
以下是详细的代码.仅供参考.
入口文件
<html>
<body>
<form action="download.php" method="GET"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="FileName" id="Fileid" value="<?php echo $_FILES["file"]["name"];?>" />
<h1></h1>
<input type="submit" name="submit" value="download" />
</form>
</body>
</html>
php写的处理文件
<?php
if( empty($_GET['FileName'])){
echo'<script> alert("非法连接 !"); location.replace ("./fileload.html") </script>'; exit();
}
$file_name=$_GET['FileName'];//得到要下载的文件
if (!file_exists($file_name)) { //检查文件是否存在
echo "文件找不到";
exit;
} else {
$file = fopen( $file_name,"r"); // 打开文件
// 输入文件标签
Header("Content-type: application/octet-stream");
//Header("Accept-Ranges: bytes");
//Header("Accept-Length: ".filesize( $file_name));
//Header("Content-Disposition: attachment; filename=" . $file_name);
// 输出文件内容
echo fread($file,filesize( $file_name));
fclose($file);
exit();
}
?>
以上代码是自己在网上找的,可是都不很齐全.记过了一段时间的调试与修改.终于把功能实现了.由于太兴奋了第一时间拿来和大家分享了.
以下是详细的代码.仅供参考.
入口文件
复制代码 代码如下:
<html>
<body>
<form action="download.php" method="GET"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="FileName" id="Fileid" value="<?php echo $_FILES["file"]["name"];?>" />
<h1></h1>
<input type="submit" name="submit" value="download" />
</form>
</body>
</html>
php写的处理文件
<?php
if( empty($_GET['FileName'])){
echo'<script> alert("非法连接 !"); location.replace ("./fileload.html") </script>'; exit();
}
$file_name=$_GET['FileName'];//得到要下载的文件
if (!file_exists($file_name)) { //检查文件是否存在
echo "文件找不到";
exit;
} else {
$file = fopen( $file_name,"r"); // 打开文件
// 输入文件标签
Header("Content-type: application/octet-stream");
//Header("Accept-Ranges: bytes");
//Header("Accept-Length: ".filesize( $file_name));
//Header("Content-Disposition: attachment; filename=" . $file_name);
// 输出文件内容
echo fread($file,filesize( $file_name));
fclose($file);
exit();
}
?>
以上代码是自己在网上找的,可是都不很齐全.记过了一段时间的调试与修改.终于把功能实现了.由于太兴奋了第一时间拿来和大家分享了.