admin 管理员组文章数量: 1087135
2024年4月23日发(作者:软件架构师免费视频教程)
维普资讯
第2l4卷第2期
2006年o4月
佳木斯大学学报(自然科学版)
Joumal of Jiamusi University(Natural Science Edition)
V01.2l4 No.2
Apr. 2006
文章编号:1008—1402(2006)o2—0189—04
用PHP向WEB服务器指定目录上传课件文件
汤凤香, 吕同富
(佳木斯大学。黑龙江佳木斯154007)
摘要:本地“课件文件”上传到服务器后,服务器脚本对“课件文件”进行保存,有很多办法,其中之
一
是把“课件文件”保存到服务器特定目录下,对“课件文件”重名,程序自动作了修改,在其前面加上了上
传时问以保证“课件文件名”的唯一性,但这失去了“课件文件”的原始名字,通过“课件文件名”查询特定
“课件文件”信息有很多困难,不利于“课件文件”管理,我们将这种方法加以改进使之能够满足按“课件文
件名”查询特定“课件文件”的要求.
关键词: 开放性自维护;课件库平台;程序设计;上传文件
中图分类号: TP393.o93 文献标识码:A
0 引言
“开放性自维护CAI课件库平台”研究工作已
经结束,我们用PHP+Mysql成功地实现了“CAI课
件库平台”的“开放性和自维护性”这一“网络维护”
中的“创新课题”,此项目具有广泛的应用前景,网
络维护是一项耗费人力物力和财力的工作,因此而
制约了网络的发展,“开放性自维护CAI课件库平
台”的成功研制和开发,为“课件库平台”等网络维
护节省大量的人力物力和财力.随着宽带网络在全
国大部分地区逐步开通,利用网络资源“开放性自
(在作者的《用P}Ⅱ)在web页面上管理课件》中介
绍),这种办法有很多问题,如文件重名,虽然程序
自动作了更改,在其前面加上了上传时间以保证文
件名的唯一性,但这失去了文件的原始名字,通过
文件名查询特定的文件信息有很多困难,不利于文
件管理,这种办法的优点是上传课件的大小不受限
制.
1.2把文件保存到数据库中利用数据库,可
以实现文件的各种操作.因为数据库有很多优点,
特别是数据库具有很强的检索功能等,首先需要解
决的一个难题就是,现在还没有哪一个数据库的
维护CAI课件库平台”共享“CAI课件”,可以避免
大量“优秀课件”的重复开发,可以毫不夸张地讲,
“开放性自维护CAI课件库平台”的成功研制和开
发,必将为我国教育事业的现代化起到不可估量的
作用.
“字段变量”能直接存放“文件类型的数据”,不仅如
此还有其它缺点,如当数据库中记录很多时,检索
的效率很低,上传课件文件的大小受到限制等.
1.3在1.1的基础上作些改进,在检索课件
文件时,再把上传时前面加上日期前缀去掉后再作
其它操作,想象一下,要远程操作一个目录,像操作
自己本地机上目录一样实在不是一件容易的事情.
就我们所想到的以上三种方法,很难说哪一种
最好,只是程序实现起来难易程度有所不同而已,
下面我们给出1.3中所介绍的方法(1.3中所介绍
1 算法分析和关键思路
“开放性自维护CAI课件库平台”,关键技术
是:“上传的课件如何按学科、专业等信息自动送达
指定的浏览和下载区域”,经过分析我们认为有三
种可行方案.
I.1作为本地的课件文件,上传到服务器后,
的方法,在作者的《开放性自维护课件文件上传算
法研究》中介绍)。
服务器脚本将课件文件保存到服务器指定目录下,
①收稿日期-2006一l2—23
作者简介:喜蓄界 篱轰馨 1汤风香( 一学978 ),女,黑龙江佳木斯人,龙目江佳木斯人,佳木斯大学数学系讲师,研究方向为计算方法.
维普资讯
190 佳木斯大学学报(自然科学版)
if(fileexists(¥counter
ifle))
{
2006年
2.PHP程序实现
这组程序演示了如何将硬盘的一个文件通过
¥fp fopen(¥counter—file,”r,’);
¥count=0+fset ̄(¥fp,6);
fclose(¥fp);
网页,上传到服务器的数据库里面,并且读出文件
的内容.
2.1 con_ifg。php:配置上传目录。指定脚本安装目
}
录
Contig.php
<?P肿
¥uploaddir=”files/”;//注意需要建立files
目录
¥uploadurl=”http://127.0.0.1/php/upfile/”:
//脚本安装目录,需根据实际更改
¥uploadnumber=5;//同时可以上传多少个
文件
¥uname=”[文件上传]”;//页面标题
? >
2.2 dir.php显示上传目录的文件
<‘f PH
require(”conilg.php”);
require(”header.php”);
¥handle=opendir(”¥uploaddir”);
echo”<P>已上传文件列表<br>\n目录
¥uploadurl¥uploaddir</p>\n”:
¥file=readdir(¥handle);
while(¥file=readdir(¥handle)){
echo”<a href=¥uploadud¥uploaddir 8 ifle
target=一blank>¥file</a><br> \n”:
}
closedir(¥handle);
? >
<hr size=1 au =left width=300>
<P><font color=#45ACF6>[<a href=in.
dex.php>返回上传页</a>]</font></p>
</body>
</html>
2.3 index.php主页文件
<?P
require(”conifg.php”);
function get
—
hitcount(¥counter—file)
{
¥count=0:
¥count++:
¥币=fopen(¥counter—file,”W”);
fput ̄(¥fp,¥count);
fclose(I}fp);
return(¥count);
}
? >
<table align:”center”border=”1”width=”
500”height=’’2O0”>
<tr>
<td iwdth=”100%”colspan= 6’bgcolor=’’#
F8C870”>
<P aling=”center”><font size=1>点击浏览
按钮可选择一至五个文件</font></td>
</tr>
<tr>
<td width=”100%”colspan=”6”>
<form action=”upload.php”method=post enc,
type=”muhiparfform—data”>
<center>
<?P} folr(¥i=1;¥i<= ¥uploadnum.
her;¥i++){echo”¥i.<input type=file name=
\”useffile[¥i]\”
ize=50 style=、”border:lpx solid silver;font—
size:12px;\”><br>\n”;}?>
<input type=submit value=”开始文件上传”
style=”color:black;font—size:14px;height:24px;’’
>
</center>
</form>
</td>
</tr>
<tr>
<td colspan=”6”bgeolor=”# F1DEo”><a
href=dir.php><font size=l>已上传文件</a>
<bgcolor=”#聃FUEo”>剩余空间:<?PHP
echo diskfreespace(”.”);
prinff(”字节访问次数:%d”,get
—
hitcount(”
维普资讯
第2期
counter.txt”));
汤凤香,等:用PHP向WEB服务器指定目录上传课件文件 l9l
n:50 leftmargin=8O style:”scmllbar一3d—light—
?></font></tr>
<tr>
color:#00A8FF;scmllbar—highliht—cgolor:#
002A3E;scmllbar—face—color:#oo2A3E;scrollbar—
arrow—color:#00A8FF:scml[bar—shadow—color:#
0OA8FF:scmllbar—base—color:#00A8FF;”>
<td hgc ̄]or “#FFFFCC”><font size=l>注
释</font></td>
<td bgcolor:“#FFFFCC”><font size:1>上
2.5 upload.php上传文件
传文件大小不得超过2MB<br>
文件名会变成小写,并且加上Et期前缀<br>
.
php会自动更名为.phpx<br>
.
php3会自动更名为.php3x<br>
文件名中空格自动更改为“一”</font></td>
</tr>
</table>
</body>
</html>
2.4 header.php显示背景文件(di r.php中include
文件)
<html>
<head>
<style TYPE=”text/css”>
body {font—size:16px;line—height:22px;
font—family:fixedsys;}
A:link {text—decoration:none;color:#
ffl ̄;}
A:visited {text—decoration:none;color:#
咄;}
A:ac ̄ve {text—decoration:none;color:#
ffff;}
A:hover {text—decoration:underline;color:
white;}
A.fileslink:link {text—decoration:underhne;
color:#ffff;}
A.fileslink:visited {text—decoration:under-
line;color:#ffff;}
A.fileslink:active {text—decoration:under—
line;color:#fffff;}
A.fileslink:hover {text—decoration:under—
line;color:white}
</style>
<tilte><?PHI'echo¥unamei? ></tilte>
</head>
<body bgcolor:black text=#DDDDDD topmar。
<?PHP
require(”config.php”);
reuqire(”header.php”);
ech0”<font color=#45ACF6> \n”;
f0.r(¥i:l;¥i<:¥uploadnumber;¥i+
+){
if(@is—file(”¥userfile[¥i]”)){
¥filesif=1;
ceho”<hr size=1 width=500 align=left>、n
<font c0l0r=white>No.0¥i</font><br> \n’’;
ceho”<table cellspacing 0 cellpaddJng=0><
tr><td width:200><font color=silver>¥userfile
—
nalTle[¥i]</font></td><td width=130>体
积:<font color=gray
>¥userfile—size[¥;i]</font></td><td>
类型:<font color:gray>¥userfile type[¥;i.j</
font></td></tr></table> \n’’;
¥timeheader=date(”Ynd”);//在给文件名
加上时间前缀以防止重名
¥nowfile[¥i]:strtolower(”¥uploaddir
¥timeheader¥userfile n帅e[¥i]”);
¥nowfile[¥i]=strtr(¥nowfile[¥i],…’,”
");
¥nowfile[¥i]=str replace(”.php”,”.
phpx”,¥nowfile[¥i]);
¥nowfile[¥i]=str replace(”.php3”,”.
php3x”,¥nowfile[¥i]);
if(@is file(”¥nowfilef¥j]”)){
ceh0”文件上传失败<br>\n原因:文件已
存在<P>\n”;
}else{
if(@copy(¥usertile[¥i],¥nowfile[¥i]))}
ceho”文件上传成功<br>\n地址为<a
href=¥uploadurl¥nowfile[¥i]target=一blank class
:
ifleslink>¥uploadurl¥nowfileI¥i]</a></p>
\n”:
}else{
维普资讯
192 佳木斯大学学报(自然科学版)
<hr size=1 width=500 align=left>
2006年
if(@copy(¥userifle[¥i],¥nowfile[¥i])){
echo”文件上传成功<br)\n地址为<a href:
¥uploadurl¥nowfile[¥i]targer=
一
<P>目前剩余空间:<?PHP ech0 disk—
freespace(”+”);?>字节</p>
blank class=file—
slink>¥uploadurl¥nowfile[¥i]</a></p>、n":
}else{
echo”文件上传失败</p>\n”;
}
}
@unlink(3}userifle[3}i]);
}
}
echo”</font>\n”:
<P><font color=#45ACF6>[<fl href=dir.
phP>已上传文件列表</a>]</p>
<P>[<fl href=index.php>返回上传页</a
>]</font></p>
</body>
</html>
参考文献:
[1]PHI'项目应用实例[M].北京:中国水利水电出版社2OO2.
[2] 吕同富.数据库文件内容的保密方法[J]+电脑学习.1999.
3.
if(!¥filesff){
echo”<P>你并没有上传任何文件.</p>
\n”;
[3] 吕同富.开放性自维护课件文件上传算法研究[J].计算机
工程。2OO5。1.
}
? >
[4]晏子(译).My .chm太平洋软件资询站.
[5]浪子(译).PHP4.chin太平洋软件资询站.
Upload Files to Web Server Directory with PHP
TANC Feng—x/ang,
(J
LU 一
University,jlnm,,d 154007,Oatna)
Abstract:There are many ways to save ifles after beiI1g uploaded to the server.One c0mm叩method is to ren蛐e
he ftiles by adding the uploading date to 0 西瑚l file to keep fl unique nanle for each file.H0wever。there is a disad—
vantage due to the prefix of he ftile name:it is diicuh tfo uerqy a speciifc file
This method was improved by the鲫.
.
thors,which Call query a specific file easily
.
Key words-opening self-maintenance;system of coursewa
re;progtmmrr ̄r;upload
,
版权声明:本文标题:用PHP向WEB服务器指定目录上传课件文件 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1713822433a653127.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论