Просмотр файла Upl_opera.php

Размер файла: 7.28Kb
  1. <?php
  2. require_once ("../includes/start.php");
  3. require_once ("../includes/functions.php");
  4. require_once ("../includes/header.php");
  5. include_once ("../themes/".$config['themes']."/index.php");
  6.  
  7. include "inc/func.inc";
  8. include "inc/conf.inc";
  9.  
  10. $text = @file("../local/profil/$log.prof");
  11. if ($text!="")
  12. {
  13. $udata = explode(":||:",$text[0]);
  14. $provlog=trim($udata[0]);
  15. $provpar=trim($udata[1]);
  16. $dostup=trim($udata[7]);
  17. $privat=trim($udata[10]);
  18. }
  19. if(!isset($did)){echo "Не выбрана директория для загрузки";}
  20. else {
  21. if(file_exists("files$did/users.offs")){
  22.  
  23. if (!$_SESSION['log']=="" && !md5($_SESSION['par'])=="" && md5($_SESSION['par'])==$provpar && $_SESSION['log']==$provlog ) {
  24.  
  25. echo"Привет, $log<br>";
  26. list($tip,$oform)=file_type("files$did");
  27. if($act=="load"){
  28. if($opis!==''){
  29. if (($_FILES['fid1']['size']) <= $max_size*1024){
  30. $uploaddir="files$did";
  31. $uploadedfile = $_POST['fid1'];
  32. if (strlen($uploadedfile)) {
  33. $array = explode('file=', $uploadedfile);
  34. $tmp_name = $array[0];
  35. $filebase64 = $array[1];
  36. $filedata = base64_decode($filebase64);
  37. $prov = htmlspecialchars($filedata);}
  38. $file1=trim($file1);
  39. $file1=utf_to_lat($file1);
  40. $file1=check_fulls($file1);
  41. $file1=str_replace("..","",$file1);
  42. $file1=str_replace("#","",$file1);
  43. $file1=str_replace("/","",$file1);
  44. $file1=str_replace("\/","",$file1);
  45. $file1=str_replace("..","",$file1);
  46. $file1=str_replace("#","",$file1);
  47. if((preg_match("/\bphp/i", $file1)==true) or (preg_match("/\bhtm/i",$file1)==true) or (preg_match("/\bphtml/i",$file1)==true) or (preg_match("/\bphp/i",$tmp_name)) or (preg_match("/else/i",$prov)) or (preg_match("/echo/i",$prov)) or (preg_match("/print/i",$prov)) or (preg_match("/base64_decode/i",$prov)) or (preg_match("/Zend/i",$prov))){
  48. echo "Попытка залить скрипт.<br>Так делать нельзя!!!<br><center>
  49. [<a href='Upl_opera.php?did=$did'>Повторить</a>]<br>
  50. [<a href='index.php?did=$did'>К папке</a>]<br>
  51. [<a href='index.php?did='>К загрузкам</a>]<br>
  52. [<a href='../index.php'>На главную</a>]</center>";
  53. }
  54. else {
  55. $format=format($file1);
  56. $format2=format($tmp_name);
  57. if(((array_search($format,$oform))==true and $format==$format2)
  58. or ($tip=="java" and (($format=="jar" or $format=="jad") and $format==$format2 ))){
  59. if(file_exists($uploaddir."/".$file1)==false){
  60. if (strlen($filebase64)) {
  61. $FileName = $uploaddir.'/'.$file1;
  62. $fid = @fopen($FileName, "wb");
  63.  
  64. if($fid){
  65. if(flock($fid, LOCK_EX)){
  66. fwrite($fid, $filedata);
  67. flock($fid, LOCK_UN);
  68. }
  69. fclose($fid);
  70. }
  71. if (file_exists($FileName) && filesize($FileName) == strlen($filedata)) {
  72. echo 'Файл '.$tmp_name.' успешно загружен!<br />';
  73. } else {
  74. echo 'Ошибка загрузки файла: '.$tmp_name.'<br />';
  75. }
  76. }
  77. }
  78. else echo "Файл с таким именем уже существует<br><center>
  79. [<a href='Upl_opera.php?did=$did'>Повторить</a>]<br>
  80. [<a href='index.php?did=$did'>К папке</a>]<br>
  81. [<a href='index.php?did='>К загрузкам</a>]<br>
  82. [<a href='../index.php'>На главную</a>]</center>";
  83. }
  84. else echo "Данный тип файлов запрещен<br><center>
  85. [<a href='Upl_opera.php?did=$did'>Повторить</a>]<br>
  86. [<a href='index.php?did=$did'>К папке</a>]<br>
  87. [<a href='index.php?did='>К загрузкам</a>]<br>
  88. [<a href='../index.php'>На главную</a>]</center>";
  89. }
  90. }
  91. else echo "Размер Файла превышает лимит";
  92.  
  93. $file1=trim($file1);
  94. $file1=htmlspecialchars($file1);
  95. $file1=str_replace("/","",$file1);
  96.  
  97. $opis=check_fulls($opis);
  98. $opis=eregi_replace("((https?|ftp)://[[:alnum:]_=/-]+(\\.[[:alnum:]_=/-]+)*(/[[:alnum:]+&amp;._=/~:%#]*(\\?[[:alnum:]?+&amp;_=/%:#]*)?)?)", "<a href='\\1'>\\1</a>", $opis);
  99. $opis=preg_replace ("|[\r\n]+|si","<br>",$opis);
  100. $opis=str_replace("
","<br>",$opis);
  101. $opis=str_replace("§","<br>",$opis);
  102. $opis = antimat($opis);
  103. $opis = smiles($opis);
  104.  
  105. $opis="$opis";
  106. $f=fopen("files$did/$file1.txt","w");
  107. fputs($f,$opis);
  108. fclose($f);
  109.  
  110. $imya=check_fulls($imya);
  111. $upltime = time();
  112. $ex = pathinfo("files$did/$file1");
  113. $ex = $ex[extension];
  114. $rr = str_replace(".".$ex,"",$fidname);
  115. $size = filesize("files$did/$file1");
  116. $dik=str_replace("/", "", $did);
  117. $fn=@file("baze/$dik.baz");
  118. $count = count($fn)+1;
  119. $fp=fopen("baze/$dik.baz","a+");
  120. flock ($fp,LOCK_EX);
  121. $zap = "$count|0|0|0|$log||$upltime|$size|$imya|$rr|$ex|$did/$file1|\r\n";
  122. fputs($fp,"$zap");
  123. fflush ($fp);
  124. flock ($fp,LOCK_UN);
  125. fclose($fp);
  126. @chmod("$fp", 0666);
  127.  
  128. echo "Описание создано<br><center>
  129. [<a href='Upl.php?did=$did&SID=$SID'>Загрузить ещё</a>]<br>
  130. [<a href='index.php?did=$did&SID=$SID'>К папке</a>]<br>
  131. [<a href='index.php?did=&SID=$SID'>К загрузкам</a>]<br>
  132. [<a href='../index.php?SID=$SID'>На главную</a>]</center>";
  133.  
  134. }else{ echo "Вы не добавили описание к файлу!<br><center>
  135. [<a href='Upl.php?did=$did&SID=$SID'>Попробовать ещё</a>]<br>
  136. [<a href='index.php?did=$did&SID=$SID'>К папке</a>]<br>
  137. [<a href='index.php?did=&SID=$SID'>К загрузкам</a>]<br>
  138. [<a href='../index.php?SID=$SID'>На главную</a>]</center>";
  139. include_once"../themes/$config_themes/foot.php";}
  140.  
  141. }
  142. else {echo"<form action=\"?did=$did&act=load\" method=\"post\" enctype='multipart/form-data'>
  143. Максимальный размер файла для загрузки: $max_size Кб<br>
  144. Разрешенные форматы для загрузки:<br>";
  145. if($tip=="java"){echo "[jar]<br>[jad]<br>";}else{
  146. foreach ($oform as $val){
  147. if ($val!==""){
  148. echo "[$val]<br>";}
  149. }}
  150. echo "Файл для загрузки:<br><input name=fid1 value =''>&nbsp;<br>
  151. <a href='op:fileselect'>Выбрать файл</a><br>
  152. Сохранить как:<br>
  153. <input type=text name=file1><Укажите название файла и его расширение.<br>";
  154.  
  155. echo "<br>Описание к файлу:<br>
  156. <textarea name=\"opis\" cols=50 rows=10></textarea><br><font color='red'>
  157. Не забывайте добавлять описание иначе файл просто не загрузится.</font><br><br>
  158. Название Файла для отображения:<br>
  159. <input type=\"text\" name=\"imya\"><br><br>";
  160.  
  161. echo "<input type=submit value='Загрузить'></form><center>
  162. [<a href='index.php?did=$did'>К папке</a>]<br>
  163. [<a href='index.php?did='>К загрузкам</a>]<br>
  164. [<a href='../index.php'>На главную</a>]</center>";
  165. }
  166. }
  167. else {
  168. echo"Вы не авторизованы,<br>
  169. для добавления файлов необходимо <a href=\"../vhod.php\">
  170. авторизоваться</a><br> или сперва <a href=\"../registration.php\">
  171. зарегистрироваться</a><br><center>
  172. [<a href='index.php?did=$did'>К папке</a>]<br>
  173. [<a href='index.php?did='>К загрузкам</a>]<br>
  174. [<a href='../index.php'>На главную</a>]</center>";
  175. }}
  176. else echo "Загрузка в данную директорию запрещена<br> <a href='index.php?did=$did'>К папке</a><br>";}
  177. include_once ("../themes/".$config['themes']."/foot.php");
  178. ?>