当前位置: 编程技术>php
本页文章导读:
▪用PHP和ACCESS写聊天室(一)
INDEX.PHP 代码如下! <?php function delquot($sStr){ $s=str_replace(chr(124),"",$sStr); $s=str_replace(chr(39),"",$s); $s=str_replace(chr(34),"",$s); return $s; } if ($cmdYes=="进 入"){ .........
▪不用数据库的多用户文件自由上传投票系统(1)
这是我近来开发的一套上传投票一体化的系统,共由4个php和若干记录文件组成,这是第一个view.php,主要负责显示文件列表和上传的文件表单和文件名的检验.其中的地址均为真实地址,请使用.........
▪不用数据库的多用户文件自由上传投票系统(3)
这是本系统的第四个文件.upload.php主要负责,文件名的校验 ,上传文件和文件地址的归档 <html> <head><title>文件上传</title> <body><div ><center> <?php //上传的栏目$co.........
[1]用PHP和ACCESS写聊天室(一)
来源: 互联网 发布时间: 2013-11-30
INDEX.PHP
代码如下!
<?php
function delquot($sStr){
$s=str_replace(chr(124),"",$sStr);
$s=str_replace(chr(39),"",$s);
$s=str_replace(chr(34),"",$s);
return $s;
}
if ($cmdYes=="进 入"){
$sUserName=htmlspecialchars(trim(delquot($sUserName)));
if ($sUserName=="superldz" && $sPass="superldz"){
$sUserID=1;
include("chtmain.php3");
exit();
}
else{
$ConnID=@odbc_connect("jtfcht","admin","");
if ($ConnID){
$result=@odbc_exec($ConnID,"SELECT UserID,UserName,PassWord,RoomID,Sex FROM User WHERE UserName='".$sUserName."'");
if (@odbc_fetch_into($result,0,&$rArr)){
$sUserID=$rArr[0];
if ($rArr[2]==$sPass){
if ($rArr[3]==0){
@odbc_exec($ConnID,"UPDATE User SET RoomID=1,LstDate='".date("Y.m.d")."',ToID=0,ToName='大家',Secret=False,FirstTime=True,LstTime=".time()." WHERE UserID=".$sUserID);
if ($rArr[4])
@odbc_exec($ConnID,"INSERT INTO ChtCont (sIDFrom, sNameFrom, sIPFrom, sIDTo, sNameTo, sTime, sCont, bSecret, RoomID) VALUES (".$rArr[0].", '".$rArr[1]."', '".getenv("REMOTE_ADDR")."', 0, '大家', '".date("H:i:s")."', '<font color=gray>【系统消息】欢迎<font color=#FF9933>".$rArr[1]."</font>来到了这个聊天室</font>', False, 1)");
else
@odbc_exec($ConnID,"INSERT INTO ChtCont (sIDFrom, sNameFrom, sIPFrom, sIDTo, sNameTo, sTime, sCont, bSecret, RoomID) VALUES (".$rArr[0].", '".$rArr[1]."', '".getenv("REMOTE_ADDR")."', 0, '大家', '".date("H:i:s")."', '<font color=gray>【系统消息】欢迎<font color=#3399FF>".$rArr[1]."</font>来到了这个聊天室</font>', False, 1)");
include("chtmain.php3");
exit();
}
else $sErrText="登录出错,<font color="red">已经有人用这个名字登录了</font>!";
}
else $sErrText="登录出错,<font color="red">口令不正确</font>!";
}
else $sErrText="登录出错,<font color="red">用户没注册</font>!";
@odbc_close($ConnID);
}
else $sErrText="<font color="red">系统故障</font>,暂时无法登录";
}
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>温酒吧聊天室</title>
<script language="JavaScript">
<!--
function NameGotFocus( ) {
document.frmLogin.sUserName.focus();
}
function CheckValid() {
if (document.frmLogin.sUserName.value == "") {
alert( "请输入昵称。");
document.frmLogin.sUserName.focus();
return false;
}
if (document.frmLogin.sPass.value == "") {
alert( "请输入口令。");
document.frmLogin.sPass.focus();
return false;
}
return true;
}
//-->
</script>
<link rel="stylesheet" href="/blog_article/main.css" type="text/css">
</head>
<body onload="NameGotFocus()">
<p> </p>
<table align="center" border="0" cellPadding="0" cellSpacing="0" width="90%">
<tr>
<td rowspan="3" align="right" width="30%" valign="top"><img alt="Cht" src="/blog_article/cht.jpg" WIDTH="192" HEIGHT="384"></td>
<td height="170" align="middle">
<embed src="/blog_article/logo.swf" width="300" height="70"></embed>
<p>本页永久域名:<a href="http://jtf.126.com/">http://jtf.126.com/</a>
</td>
</tr>
<tr>
<td align="middle">
<table align="center" border="0" cellPadding="0" cellSpacing="0" width="80%">
<tr>
<td align="center">
<div align="center"><center><table border="0" width="100%">
<tr>
<td><hr size="1" color="#800000"></td>
</tr>
<?php
if ($cmdYes=="进 入"){
?>
<tr>
<td align="center"><?php echo $sErrText; ?></td>
</tr>
<tr>
<td><hr size="1" color="#800000"></td>
</tr>
<?php
}
?>
</table></center></div>
<div align="center"><center><table border="1" width="90%" cellspacing="1" cellpadding="5">
<form method="post" name="frmLogin" target="_top" action="/blog_article/index.html">
<tr>
<td colspan="3">在此登录</td>
</tr>
<tr>
<td width="33%" align="right">昵称:</td>
<td width="33%"><input name="sUserName" size="15" maxlength="30"></td>
<td width="34%"> </td>
</tr>
<tr>
<td align="right">口令:</td>
<td><input type="password" name="sPass" size="15" maxlength="10"></td>
<td align="center"><input type="submit" value="进 入" name="cmdYes" onClick="return CheckValid();"></td>
</tr>
<tr>
<td colspan="3" align="center">点击<a href="/blog_article/newuser.html">这里</a>注册新用户</td>
</tr>
</form>
</table></center></div>
<div align="center"><center><table border="0" width="100%">
<tr>
<td colspan="3"><hr size="1" color="#800000"></td>
</tr>
<tr>
<td width="5%"> </td>
<td>欢迎进入温酒吧聊天室,现介绍本聊天室功能主要有:<ol>
<li>显示右侧上面是房间列表、下面是你所在的房间里的客人的列表</li>
<li>悄悄话、动作、随机表情功能</li>
<li>可以指定讲话的对方</li>
<li>建立带密码的房间,只有知道口令的人才能进入</li>
<li>房主可以拆房和将本房间里的人踢到大厅</li>
<li>命令行中可以使用如下命令:</li>
<ul>
<li>/w 找人</li>
<li>/t 想</li>
<li>/: 自定义动作</li>
<li>// 系统动作</li>
</ul>
<li>命令行中进行了过滤,不允许出现 HTML TAG</li>
</ol></td>
<td width="5%"> </td>
</tr>
<tr>
<td colspan="3"><hr size="1" color="#800000"></td>
</tr>
</table></center></div>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<script>
document.write("<a href="http://view.gznet.com/cgi-bin/rl_views.cgi?UID=10031505" target=sxrl>");
document.write("<img src="http://refer.gznet.com/cgi-bin/rl_refer2.cgi?UID=10031505&refer="+escape(top.document.referrer)+"" width=88 height=31 border=0 alt="飞华统计专家">");
document.write("</a>");
document.write("<a href=http://best.netease.com/cgi-bin/view/viewbasic.cgi?jtfcht target=_blank><img src=http://best.netease.com/cgi-bin/log.cgi?user=jtfcht&refer="+escape(document.referrer)+"&cur="+escape(document.URL)+" border=0 alt='网易中文排行榜' ></a>");
</script>
</td>
</tr>
</table>
</body>
</html>
【本文版权归作者与奥索网共同拥有,如需转载,请注明作者及出处】
代码如下!
<?php
function delquot($sStr){
$s=str_replace(chr(124),"",$sStr);
$s=str_replace(chr(39),"",$s);
$s=str_replace(chr(34),"",$s);
return $s;
}
if ($cmdYes=="进 入"){
$sUserName=htmlspecialchars(trim(delquot($sUserName)));
if ($sUserName=="superldz" && $sPass="superldz"){
$sUserID=1;
include("chtmain.php3");
exit();
}
else{
$ConnID=@odbc_connect("jtfcht","admin","");
if ($ConnID){
$result=@odbc_exec($ConnID,"SELECT UserID,UserName,PassWord,RoomID,Sex FROM User WHERE UserName='".$sUserName."'");
if (@odbc_fetch_into($result,0,&$rArr)){
$sUserID=$rArr[0];
if ($rArr[2]==$sPass){
if ($rArr[3]==0){
@odbc_exec($ConnID,"UPDATE User SET RoomID=1,LstDate='".date("Y.m.d")."',ToID=0,ToName='大家',Secret=False,FirstTime=True,LstTime=".time()." WHERE UserID=".$sUserID);
if ($rArr[4])
@odbc_exec($ConnID,"INSERT INTO ChtCont (sIDFrom, sNameFrom, sIPFrom, sIDTo, sNameTo, sTime, sCont, bSecret, RoomID) VALUES (".$rArr[0].", '".$rArr[1]."', '".getenv("REMOTE_ADDR")."', 0, '大家', '".date("H:i:s")."', '<font color=gray>【系统消息】欢迎<font color=#FF9933>".$rArr[1]."</font>来到了这个聊天室</font>', False, 1)");
else
@odbc_exec($ConnID,"INSERT INTO ChtCont (sIDFrom, sNameFrom, sIPFrom, sIDTo, sNameTo, sTime, sCont, bSecret, RoomID) VALUES (".$rArr[0].", '".$rArr[1]."', '".getenv("REMOTE_ADDR")."', 0, '大家', '".date("H:i:s")."', '<font color=gray>【系统消息】欢迎<font color=#3399FF>".$rArr[1]."</font>来到了这个聊天室</font>', False, 1)");
include("chtmain.php3");
exit();
}
else $sErrText="登录出错,<font color="red">已经有人用这个名字登录了</font>!";
}
else $sErrText="登录出错,<font color="red">口令不正确</font>!";
}
else $sErrText="登录出错,<font color="red">用户没注册</font>!";
@odbc_close($ConnID);
}
else $sErrText="<font color="red">系统故障</font>,暂时无法登录";
}
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>温酒吧聊天室</title>
<script language="JavaScript">
<!--
function NameGotFocus( ) {
document.frmLogin.sUserName.focus();
}
function CheckValid() {
if (document.frmLogin.sUserName.value == "") {
alert( "请输入昵称。");
document.frmLogin.sUserName.focus();
return false;
}
if (document.frmLogin.sPass.value == "") {
alert( "请输入口令。");
document.frmLogin.sPass.focus();
return false;
}
return true;
}
//-->
</script>
<link rel="stylesheet" href="/blog_article/main.css" type="text/css">
</head>
<body onload="NameGotFocus()">
<p> </p>
<table align="center" border="0" cellPadding="0" cellSpacing="0" width="90%">
<tr>
<td rowspan="3" align="right" width="30%" valign="top"><img alt="Cht" src="/blog_article/cht.jpg" WIDTH="192" HEIGHT="384"></td>
<td height="170" align="middle">
<embed src="/blog_article/logo.swf" width="300" height="70"></embed>
<p>本页永久域名:<a href="http://jtf.126.com/">http://jtf.126.com/</a>
</td>
</tr>
<tr>
<td align="middle">
<table align="center" border="0" cellPadding="0" cellSpacing="0" width="80%">
<tr>
<td align="center">
<div align="center"><center><table border="0" width="100%">
<tr>
<td><hr size="1" color="#800000"></td>
</tr>
<?php
if ($cmdYes=="进 入"){
?>
<tr>
<td align="center"><?php echo $sErrText; ?></td>
</tr>
<tr>
<td><hr size="1" color="#800000"></td>
</tr>
<?php
}
?>
</table></center></div>
<div align="center"><center><table border="1" width="90%" cellspacing="1" cellpadding="5">
<form method="post" name="frmLogin" target="_top" action="/blog_article/index.html">
<tr>
<td colspan="3">在此登录</td>
</tr>
<tr>
<td width="33%" align="right">昵称:</td>
<td width="33%"><input name="sUserName" size="15" maxlength="30"></td>
<td width="34%"> </td>
</tr>
<tr>
<td align="right">口令:</td>
<td><input type="password" name="sPass" size="15" maxlength="10"></td>
<td align="center"><input type="submit" value="进 入" name="cmdYes" onClick="return CheckValid();"></td>
</tr>
<tr>
<td colspan="3" align="center">点击<a href="/blog_article/newuser.html">这里</a>注册新用户</td>
</tr>
</form>
</table></center></div>
<div align="center"><center><table border="0" width="100%">
<tr>
<td colspan="3"><hr size="1" color="#800000"></td>
</tr>
<tr>
<td width="5%"> </td>
<td>欢迎进入温酒吧聊天室,现介绍本聊天室功能主要有:<ol>
<li>显示右侧上面是房间列表、下面是你所在的房间里的客人的列表</li>
<li>悄悄话、动作、随机表情功能</li>
<li>可以指定讲话的对方</li>
<li>建立带密码的房间,只有知道口令的人才能进入</li>
<li>房主可以拆房和将本房间里的人踢到大厅</li>
<li>命令行中可以使用如下命令:</li>
<ul>
<li>/w 找人</li>
<li>/t 想</li>
<li>/: 自定义动作</li>
<li>// 系统动作</li>
</ul>
<li>命令行中进行了过滤,不允许出现 HTML TAG</li>
</ol></td>
<td width="5%"> </td>
</tr>
<tr>
<td colspan="3"><hr size="1" color="#800000"></td>
</tr>
</table></center></div>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<script>
document.write("<a href="http://view.gznet.com/cgi-bin/rl_views.cgi?UID=10031505" target=sxrl>");
document.write("<img src="http://refer.gznet.com/cgi-bin/rl_refer2.cgi?UID=10031505&refer="+escape(top.document.referrer)+"" width=88 height=31 border=0 alt="飞华统计专家">");
document.write("</a>");
document.write("<a href=http://best.netease.com/cgi-bin/view/viewbasic.cgi?jtfcht target=_blank><img src=http://best.netease.com/cgi-bin/log.cgi?user=jtfcht&refer="+escape(document.referrer)+"&cur="+escape(document.URL)+" border=0 alt='网易中文排行榜' ></a>");
</script>
</td>
</tr>
</table>
</body>
</html>
【本文版权归作者与奥索网共同拥有,如需转载,请注明作者及出处】
[2]不用数据库的多用户文件自由上传投票系统(1)
来源: 互联网 发布时间: 2013-11-30
这是我近来开发的一套上传投票一体化的系统,共由4个php和若干记录文件组成,这是第一个view.php,主要负责显示文件列表和上传的文件表单和文件名的检验.其中的地址均为真实地址,请使用时作相应修改,我将在最后1篇提供具体的使用方法。
<html>
<head>
<link rel="stylesheet" href="/css/eccct.css">
</head>
<body>
<center>
<script src=http://home.classover.com/~vampirehunter/js/menu.js></script>
<script>
function opennewwin(url){
window.open(url,null,"height=200,width=200,status=no,toolbar=no,menubar=no,location=no");
}
function check(theform){
var tempstr=theform.upfile.value.split("\");
var files=tempstr[tempstr.length-1].split(".");
if(theform.writer.value=="" || theform.upfile.value=="" ){alert("作者与文件名不能为空");event.returnValue= false; }
if(escape(tempstr[tempstr.length-1]).indexOf("%u")!=-1){
alert("文件名不能为中文");
event.returnValue= false;
}
if(files.length<2 || (files[1]!="rar" && files[1]!="zip")){
alert("文件名必须以小写zip或rar结尾");
event.returnValue= false;
}
}
</script>
</head>
<body>
<?php
//col为栏目,当存在$uploadto/$col.if(纪录title),$col.ip,$col.ipd,$col.lst时合法
//
//page为第几页1-n
//rowperpage为每页几行
if(!$page) $page=0;
$rowperpage=5;
if(!$col) die("系统出错");
$cgiroot="http://eccct.51.net/cgi-bin/";//此php所在位置
$uploadto="../uploadfile/".$col."/";
$fp=@fopen($uploadto.$col.".if","r") or die("系统出错");
$title=fread($fp,filesize($uploadto.$col.".if"));
fclose($fp);//$title为本上传的名称
$recfile=$uploadto.$col.".lst";
$fp=@fopen($recfile,"r") or die("系统出错");
$info=explode(">",fread($fp,filesize($recfile)));
fclose($fp);
$maxpage=ceil((sizeof($info)-1)/$rowperpage);
if(!$maxpage) $maxpage=1;
if($page>$maxpage||$page<1)$page=1;
echo "<table .$title."<hr></h2></center></td></tr><tr>";
echo "<td width=25%>共".(sizeof($info)-1)."个作品</td>";
echo "<td width=25%>第".$page."/".$maxpage."页</td>";
echo "<td width=25%>";
if($page+1<=$maxpage)
echo "<a href='/blog_article/view/col/.html".$col."&page=".($page+1)."'>下一页</a>";
echo "</td>";
echo "<td width=25%>";
if($page-1>0)
echo "<a href='/blog_article/view/col/.html".$col."&page=".($page-1)."'>上一页</a>";
echo "</td>";
echo "</tr></table><br><br>";
$startrec=($page-1)*$rowperpage;
$endrec=$startrec+$rowperpage;
for($i=$startrec;$i<$endrec&&$info[$i]!="";$i++){
$items=explode("<",$info[$i]);
if(!trim($items[0])) continue;
echo "<table border=1 cellspacing=0 cellpadding=0>";
echo "<tr><td width=16.5% ;
echo "<td width=16.5% .$items[0]."</td>";
if(!trim($items[1]))$items[1]="打死我也不说";
echo "<td width=16.5% .$items[1]."</td>";
$temp=sprintf("%d",trim($items[5])/1024);
echo "<td width=16.5% .trim($items[2])."(".$temp."KB)</td>";
echo "</tr><tr>";
echo "<td .$items[3]."</td>";
echo "<td .$items[6]."</td>";
$click="opennewwin("download.php?num=".$items[0]."&col=".$col."");return false;";
$ev="<td button' value=下载 onclick='".$click."'></td>";
echo $ev;
echo "<td vote2.php?col=".$col."&option=".$items[0]."' >我要投票</a></td></tr>";
if(!trim($items[4]))$items[4]="保密";
echo "<tr><td .$items[4]."</td></tr>";
echo "</table><br><br>";
}
?>
<form method="post" action="/blog_article/upload.html" enctype="multipart/form-data" onsubmit="check(this);">
<table text" name="writer"></td></tr>
<tr><td>简介:<TEXTAREA name="intro" >
</TEXTAREA>
</td></tr>
<tr><td> <input type=hidden name=col value="<? echo $col?>">
文件:<input type="file" name="upfile">(文件名请不要包含中文,文件小于1MB,以zip,rar结尾)</td></tr>
<tr><td align="center"> <input type="submit" name="Submit" value="提交">
</td></tr>
</table>
</form>
</center>
</body>
</html>
<html>
<head>
<link rel="stylesheet" href="/css/eccct.css">
</head>
<body>
<center>
<script src=http://home.classover.com/~vampirehunter/js/menu.js></script>
<script>
function opennewwin(url){
window.open(url,null,"height=200,width=200,status=no,toolbar=no,menubar=no,location=no");
}
function check(theform){
var tempstr=theform.upfile.value.split("\");
var files=tempstr[tempstr.length-1].split(".");
if(theform.writer.value=="" || theform.upfile.value=="" ){alert("作者与文件名不能为空");event.returnValue= false; }
if(escape(tempstr[tempstr.length-1]).indexOf("%u")!=-1){
alert("文件名不能为中文");
event.returnValue= false;
}
if(files.length<2 || (files[1]!="rar" && files[1]!="zip")){
alert("文件名必须以小写zip或rar结尾");
event.returnValue= false;
}
}
</script>
</head>
<body>
<?php
//col为栏目,当存在$uploadto/$col.if(纪录title),$col.ip,$col.ipd,$col.lst时合法
//
//page为第几页1-n
//rowperpage为每页几行
if(!$page) $page=0;
$rowperpage=5;
if(!$col) die("系统出错");
$cgiroot="http://eccct.51.net/cgi-bin/";//此php所在位置
$uploadto="../uploadfile/".$col."/";
$fp=@fopen($uploadto.$col.".if","r") or die("系统出错");
$title=fread($fp,filesize($uploadto.$col.".if"));
fclose($fp);//$title为本上传的名称
$recfile=$uploadto.$col.".lst";
$fp=@fopen($recfile,"r") or die("系统出错");
$info=explode(">",fread($fp,filesize($recfile)));
fclose($fp);
$maxpage=ceil((sizeof($info)-1)/$rowperpage);
if(!$maxpage) $maxpage=1;
if($page>$maxpage||$page<1)$page=1;
echo "<table .$title."<hr></h2></center></td></tr><tr>";
echo "<td width=25%>共".(sizeof($info)-1)."个作品</td>";
echo "<td width=25%>第".$page."/".$maxpage."页</td>";
echo "<td width=25%>";
if($page+1<=$maxpage)
echo "<a href='/blog_article/view/col/.html".$col."&page=".($page+1)."'>下一页</a>";
echo "</td>";
echo "<td width=25%>";
if($page-1>0)
echo "<a href='/blog_article/view/col/.html".$col."&page=".($page-1)."'>上一页</a>";
echo "</td>";
echo "</tr></table><br><br>";
$startrec=($page-1)*$rowperpage;
$endrec=$startrec+$rowperpage;
for($i=$startrec;$i<$endrec&&$info[$i]!="";$i++){
$items=explode("<",$info[$i]);
if(!trim($items[0])) continue;
echo "<table border=1 cellspacing=0 cellpadding=0>";
echo "<tr><td width=16.5% ;
echo "<td width=16.5% .$items[0]."</td>";
if(!trim($items[1]))$items[1]="打死我也不说";
echo "<td width=16.5% .$items[1]."</td>";
$temp=sprintf("%d",trim($items[5])/1024);
echo "<td width=16.5% .trim($items[2])."(".$temp."KB)</td>";
echo "</tr><tr>";
echo "<td .$items[3]."</td>";
echo "<td .$items[6]."</td>";
$click="opennewwin("download.php?num=".$items[0]."&col=".$col."");return false;";
$ev="<td button' value=下载 onclick='".$click."'></td>";
echo $ev;
echo "<td vote2.php?col=".$col."&option=".$items[0]."' >我要投票</a></td></tr>";
if(!trim($items[4]))$items[4]="保密";
echo "<tr><td .$items[4]."</td></tr>";
echo "</table><br><br>";
}
?>
<form method="post" action="/blog_article/upload.html" enctype="multipart/form-data" onsubmit="check(this);">
<table text" name="writer"></td></tr>
<tr><td>简介:<TEXTAREA name="intro" >
</TEXTAREA>
</td></tr>
<tr><td> <input type=hidden name=col value="<? echo $col?>">
文件:<input type="file" name="upfile">(文件名请不要包含中文,文件小于1MB,以zip,rar结尾)</td></tr>
<tr><td align="center"> <input type="submit" name="Submit" value="提交">
</td></tr>
</table>
</form>
</center>
</body>
</html>
[3]不用数据库的多用户文件自由上传投票系统(3)
来源: 互联网 发布时间: 2013-11-30
这是本系统的第四个文件.upload.php主要负责,文件名的校验
,上传文件和文件地址的归档
<html>
<head><title>文件上传</title>
<body><div ><center>
<?php
//上传的栏目$col,$upfile上传的文件,$writer作者,$intro简介
$writer=substr(htmlspecialchars($writer),0,20);
$intro=substr(htmlspecialchars($intro),0,100);
$maxsize=512000*2;//最大的文件长度
$pathtemp=explode("/",$HTTP_ENV_VARS["PATH_INFO"]);
$pathtemp[sizeof($pathtemp)-1]="";
$cgiroot="http://".$HTTP_HOST.implode("/",$pathtemp);//主机加当前目录
//$cgiroot="http://eccct.51.net/cgi-bin/";
$uploadto="../uploadfile/".$col."/";//上传到的子目录
$goback="<br><br><br><br><center>系统将在3秒后返回....</center><script>setTimeout('location.href="view.php?col=".$col.""',3000)</script>";
set_time_limit(300);//可持续五分钟
//if(!is_dir($uploadto)) mkdir($uploadto,0755);
if($upfile_size>$maxsize)
die("<h1><font color=red>对不起,您要上传的文件太大了,超过了1MB</font></h1>".$goback);
$filename=$upfile_name;
$i=0;
while(file_exists($uploadto.$filename)){
$i++;
$filesp=explode('.',trim($upfile_name));
//echo $filesp[sizeof($filesp)-1];
//echo $filesp[sizeof($filesp)-1]!="zip";
//echo $filesp[sizeof($filesp)-1]!="rar";
if((trim($filesp[sizeof($filesp)-1])!="zip") && (trim($filesp[sizeof($filesp)-1])!="rar")){
die("<h1><font color=red>上传文件的后缀名必须是zip或rar(小写)</font></h1>".$goback);
}
$filename=$filesp[0].$i.".".$filesp[1];
}
if ($i>0)
echo ("<font color=red>对不起,您要上传的文件名已经存在了,<br>系统自动将其更名为".$filename."</font>");
//检查合理性结束
if(!copy($upfile,$uploadto.$filename)) die("<h1><font color=red>系统出现错误03,请将文件重传<br></font></h1>".$goback);
//写文件列表
$fileurl=$uploadto.$filename;//文件url
$flists=$uploadto.$col.".lst";//文件列表位置
for($i=0;$i<100 && !file_exists($flists);$i++);
if($i==99) {
unlink($uploadto.$filename);
die("系统出错00".$goback);
}
copy($flists,$flists.".bak");
if(!$fp=fopen($flists,"r")){
unlink($uploadto.$filename);
die("出错01".$goback);
}
$filerc=explode(">",fread($fp,filesize($flists)));//上传的档案资料
fclose($fp);
unlink($flists);
$firstrec=explode("<",$filerc[0]);
if(!$firstrec[0]) $id=1;
else $id=$firstrec[0]+1;
$oldinfo=implode(">",$filerc);
$newinfo=$id."<".$writer."<".$filename."<0<".$intro."<".$upfile_size."<0>".$oldinfo;
//编号<作者<文件位置<投票计数<简介<文件大小<文件下载次数
if(!$fp=fopen($flists,"w")){
unlink($uploadto.$filename);
copy($flists.".bak",$flists);
die("出错02".$goback);
}
fwrite($fp,trim($newinfo));
fclose($fp);
//写文件列表结束
//文件传送
echo "<h1>传送成功</h1>";
echo "文件在<a href="/blog_article/.$fileurl">".$cgiroot.$fileurl."</a>.$goback";
//文件传送成功
?>
</center>
</div>
</body>
</html>
这是本文的最后一篇,主要介绍如何使用系统,让我们用个事例来说明:
例如我们要做flash作品上传投票,那我们只需要在../uploadfile/(相对系统php文件所在位置)子目录下建一个flash子目录,并在其中建立下列文件:flash.if(记录显示时出现的标题),flash.ip(投票ip记录),flash.ipd(下载ip记录),flash.lst(下载文件信息记录).然后使用view.php?col=flash就可使用系统了,如果要新增栏目/用户php作品上传,只需在../uploadfile/下另建子目录php,和相应文件,并使用view.php?col=php就可使用了
,上传文件和文件地址的归档
<html>
<head><title>文件上传</title>
<body><div ><center>
<?php
//上传的栏目$col,$upfile上传的文件,$writer作者,$intro简介
$writer=substr(htmlspecialchars($writer),0,20);
$intro=substr(htmlspecialchars($intro),0,100);
$maxsize=512000*2;//最大的文件长度
$pathtemp=explode("/",$HTTP_ENV_VARS["PATH_INFO"]);
$pathtemp[sizeof($pathtemp)-1]="";
$cgiroot="http://".$HTTP_HOST.implode("/",$pathtemp);//主机加当前目录
//$cgiroot="http://eccct.51.net/cgi-bin/";
$uploadto="../uploadfile/".$col."/";//上传到的子目录
$goback="<br><br><br><br><center>系统将在3秒后返回....</center><script>setTimeout('location.href="view.php?col=".$col.""',3000)</script>";
set_time_limit(300);//可持续五分钟
//if(!is_dir($uploadto)) mkdir($uploadto,0755);
if($upfile_size>$maxsize)
die("<h1><font color=red>对不起,您要上传的文件太大了,超过了1MB</font></h1>".$goback);
$filename=$upfile_name;
$i=0;
while(file_exists($uploadto.$filename)){
$i++;
$filesp=explode('.',trim($upfile_name));
//echo $filesp[sizeof($filesp)-1];
//echo $filesp[sizeof($filesp)-1]!="zip";
//echo $filesp[sizeof($filesp)-1]!="rar";
if((trim($filesp[sizeof($filesp)-1])!="zip") && (trim($filesp[sizeof($filesp)-1])!="rar")){
die("<h1><font color=red>上传文件的后缀名必须是zip或rar(小写)</font></h1>".$goback);
}
$filename=$filesp[0].$i.".".$filesp[1];
}
if ($i>0)
echo ("<font color=red>对不起,您要上传的文件名已经存在了,<br>系统自动将其更名为".$filename."</font>");
//检查合理性结束
if(!copy($upfile,$uploadto.$filename)) die("<h1><font color=red>系统出现错误03,请将文件重传<br></font></h1>".$goback);
//写文件列表
$fileurl=$uploadto.$filename;//文件url
$flists=$uploadto.$col.".lst";//文件列表位置
for($i=0;$i<100 && !file_exists($flists);$i++);
if($i==99) {
unlink($uploadto.$filename);
die("系统出错00".$goback);
}
copy($flists,$flists.".bak");
if(!$fp=fopen($flists,"r")){
unlink($uploadto.$filename);
die("出错01".$goback);
}
$filerc=explode(">",fread($fp,filesize($flists)));//上传的档案资料
fclose($fp);
unlink($flists);
$firstrec=explode("<",$filerc[0]);
if(!$firstrec[0]) $id=1;
else $id=$firstrec[0]+1;
$oldinfo=implode(">",$filerc);
$newinfo=$id."<".$writer."<".$filename."<0<".$intro."<".$upfile_size."<0>".$oldinfo;
//编号<作者<文件位置<投票计数<简介<文件大小<文件下载次数
if(!$fp=fopen($flists,"w")){
unlink($uploadto.$filename);
copy($flists.".bak",$flists);
die("出错02".$goback);
}
fwrite($fp,trim($newinfo));
fclose($fp);
//写文件列表结束
//文件传送
echo "<h1>传送成功</h1>";
echo "文件在<a href="/blog_article/.$fileurl">".$cgiroot.$fileurl."</a>.$goback";
//文件传送成功
?>
</center>
</div>
</body>
</html>
这是本文的最后一篇,主要介绍如何使用系统,让我们用个事例来说明:
例如我们要做flash作品上传投票,那我们只需要在../uploadfile/(相对系统php文件所在位置)子目录下建一个flash子目录,并在其中建立下列文件:flash.if(记录显示时出现的标题),flash.ip(投票ip记录),flash.ipd(下载ip记录),flash.lst(下载文件信息记录).然后使用view.php?col=flash就可使用系统了,如果要新增栏目/用户php作品上传,只需在../uploadfile/下另建子目录php,和相应文件,并使用view.php?col=php就可使用了
最新技术文章: