欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

不用数据库的多用户文件*上传投票系统(3)

程序员文章站 2022-04-28 14:19:21
这是本系统的第四个文件.upload.php主要负责,文件名的校验 ,上传文件和文件地址的归档 ...</div> <div class="content"> 这是本系统的第四个文件.upload.php主要负责,文件名的校验 <br>,上传文件和文件地址的归档 <br><br><html> <br><head><title>文件上传</title> <br><body><div style="width:750"><center> <br><?php <br>//上传的栏目$col,$upfile上传的文件,$writer作者,$intro简介 <br><br><br>$writer=substr(htmlspecialchars($writer),0,20); <br>$intro=substr(htmlspecialchars($intro),0,100); <br><br>$maxsize=512000*2;//最大的文件长度 <br>$pathtemp=explode("/",$http_env_vars["path_info"]); <br>$pathtemp[sizeof($pathtemp)-1]=""; <br>$cgiroot="http://".$http_host.implode("/",$pathtemp);//主机加当前目录 <br><br><br><br>//$cgiroot="http://eccct.51.net/cgi-bin/"; <br>$uploadto="../uploadfile/".$col."/";//上传到的子目录 <br><br>$goback="<br><br><br><br><center>系统将在3秒后返回....</center><script>settimeout('location.href="view.php?col=".$col.""',3000)</script>"; <br><br><br><br><br>set_time_limit(300);//可持续五分钟 <br><br><br><br><br><br><br><br><br><br><br><br>//if(!is_dir($uploadto)) mkdir($uploadto,0755); <br><br>if($upfile_size>$maxsize) <br>die("<h1><font color=red>对不起,您要上传的文件太大了,超过了1mb</font></h1>".$goback); <br><br>$filename=$upfile_name; <br>$i=0; <br>while(file_exists($uploadto.$filename)){ <br>$i++; <br><br>$filesp=explode('.',trim($upfile_name)); <br>//echo $filesp[sizeof($filesp)-1]; <br>//echo $filesp[sizeof($filesp)-1]!="zip"; <br>//echo $filesp[sizeof($filesp)-1]!="rar"; <br><br>if((trim($filesp[sizeof($filesp)-1])!="zip") && (trim($filesp[sizeof($filesp)-1])!="rar")){ <br><br>die("<h1><font color=red>上传文件的后缀名必须是zip或rar(小写)</font></h1>".$goback); <br><br>} <br><br>$filename=$filesp[0].$i.".".$filesp[1]; <br><br>} <br><br><br>if ($i>0) <br>echo ("<font color=red>对不起,您要上传的文件名已经存在了,<br>系统自动将其更名为".$filename."</font>"); <br><br>//检查合理性结束 <br><br>if(!copy($upfile,$uploadto.$filename)) die("<h1><font color=red>系统出现错误03,请将文件重传<br></font></h1>".$goback); <br><br>//写文件列表 <br>$fileurl=$uploadto.$filename;//文件url <br>$flists=$uploadto.$col.".lst";//文件列表位置 <br><br>for($i=0;$i<100 && !file_exists($flists);$i++); <br>if($i==99) { <br>unlink($uploadto.$filename); <br>die("系统出错00".$goback); <br>} <br><br><br>copy($flists,$flists.".bak"); <br>if(!$fp=fopen($flists,"r")){ <br>unlink($uploadto.$filename); <br>die("出错01".$goback); <br>} <br>$filerc=explode(">",fread($fp,filesize($flists)));//上传的档案资料 <br>fclose($fp); <br><br>unlink($flists); <br><br>$firstrec=explode("<",$filerc[0]); <br><br>if(!$firstrec[0]) $id=1; <br>else $id=$firstrec[0]+1; <br><br> $oldinfo=implode(">",$filerc); <br><br>$newinfo=$id."<".$writer."<".$filename."<0<".$intro."<".$upfile_size."<0>".$oldinfo; <br>//编号<作者<文件位置<投票计数<简介<文件大小<文件下载次数 <br><br>if(!$fp=fopen($flists,"w")){ <br>unlink($uploadto.$filename); <br>copy($flists.".bak",$flists); <br>die("出错02".$goback); <br>} <br><br>fwrite($fp,trim($newinfo)); <br><br>fclose($fp); <br><br><br>//写文件列表结束 <br><br><br>//文件传送 <br><br>echo "<h1>传送成功</h1>"; <br><br><br><br>echo "文件在<a href=".$fileurl.">".$cgiroot.$fileurl."</a>.$goback"; <br>//文件传送成功 <br><br><br><br><br>?> <br></center> <br></div> <br></body> <br></html> <br><br>这是本文的最后一篇,主要介绍如何使用系统,让我们用个事例来说明: <br><br>例如我们要做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就可使用了  </div> <div class="info-pre-next"> <p> 上一篇: <a href="/article/773548.html"> 用PHP和ACCESS写聊天室(三) </a> </p> <p> 下一篇: <a href="/article/773550.html"> 软件架构、IP、端口号、域名、网站分类 </a> </p> </div> <div class="wz_tuijian"> <p> 推荐阅读 </p> <ul> <li> <a href="/article/1867962.html" target="_blank" title="不用数据库的多用户文件*上传投票系统(1)"> <h2> 不用数据库的多用户文件*上传投票系统(1) </h2> </a> </li> <li> <a href="/article/1867933.html" target="_blank" title="不用数据库的多用户文件*上传投票系统(3)"> <h2> 不用数据库的多用户文件*上传投票系统(3) </h2> </a> </li> <li> <a href="/article/1146396.html" target="_blank" title="不用数据库的多用户文件*上传投票系统(2)_PHP教程"> <h2> 不用数据库的多用户文件*上传投票系统(2)_PHP教程 </h2> </a> </li> <li> <a href="/article/1110715.html" target="_blank" title="不用数据库的多用户文件*上传投票系统2"> <h2> 不用数据库的多用户文件*上传投票系统2 </h2> </a> </li> <li> <a href="/article/1077549.html" target="_blank" title="投票系统 不用数据库的多用户文件*上传投票系统3"> <h2> 投票系统 不用数据库的多用户文件*上传投票系统3 </h2> </a> </li> <li> <a href="/article/802280.html" target="_blank" title="不用数据库的多用户文件*上传投票系统1"> <h2> 不用数据库的多用户文件*上传投票系统1 </h2> </a> </li> <li> <a href="/article/773549.html" target="_blank" title="不用数据库的多用户文件*上传投票系统(3)"> <h2> 不用数据库的多用户文件*上传投票系统(3) </h2> </a> </li> <li> <a href="/article/773571.html" target="_blank" title="不用数据库的多用户文件*上传投票系统(1)"> <h2> 不用数据库的多用户文件*上传投票系统(1) </h2> </a> </li> <li> <a href="/article/666421.html" target="_blank" title="不用数据库的多用户文件*上传投票系统(3)_PHP教程"> <h2> 不用数据库的多用户文件*上传投票系统(3)_PHP教程 </h2> </a> </li> <li> <a href="/article/502241.html" target="_blank" title="不用数据库的多用户文件*上传投票系统(1)_PHP教程"> <h2> 不用数据库的多用户文件*上传投票系统(1)_PHP教程 </h2> </a> </li> </ul> </div> </article> </div> </main> <footer><div class="box"><div class="ft_nav"><div class="ft_about"><p>关于网站</p><ul><li><a href="/sitemap.xml" target="_blank" title="网站地图">网站地图</a></li><li><a href="/list/2/" title="最新程序员文章站">最新程序员文章站</a></li></ul></div><div class="ft_contact"><ul><li>本站所有数据收集于网络如有侵犯到您的权益,请联系我们进行下架处理。</li><li class="email_show"></li></ul></div></div><div class="copyright"><div class="cr_left"><p> 备案号:<a href="https://beian.miit.gov.cn/#/Integrated/index" target="_blank">粤ICP备20058927号</a></p><p>© Copyright © 2020-2022 www.superweb999.com 程序员文章站. </p></div></div></div></footer> </body> </html>