Просмотр файла down/index.php

Размер файла: 13.89Kb
  1. <?php
  2. #Made By: AngelOfFaith
  3. #ICQ: 410755038
  4. #Email: angeloffaith@inbox.ru
  5. #Url: http://coder-lib.ru
  6. #Все права на скрипт принадлежат автору! Тоесть мне! Скрипт запрещено распространять и/или продавать без согласия автора!
  7. require_once('../lib/inc/fnc.php');
  8. require_once('../lib/inc/db.php');
  9. require_once('../sys/system.php');
  10. $TITLE='Архив загрузок';
  11. $TIT='Архив загрузок';
  12. require_once('../lib/inc/head.php');
  13.  
  14. switch ($act){
  15. ///////////////////////////////////Выводим разделы//////////////////////////////
  16. default:
  17. whereis($udata['name'],'Архив загрузок');
  18. $razd=@mysql_query("SELECT * FROM `d_kateg` WHERE `razd`='yes'");
  19. if(!mysql_num_rows($razd)){textwrite('Разделы пока не созданы!');}else{
  20. $arrdata=array();
  21. $allfile=array();
  22. $newfile=array();
  23. $lfile=array();
  24. $alldirs=array();
  25. while($row=mysql_fetch_assoc($razd)){
  26. $arrdata[]=$row;
  27. $allfile[]=mysql_result(mysql_query("SELECT count(*) FROM `d_file` WHERE `kid`='".$row['id']."'"),0);
  28. $newfile[]=mysql_result(mysql_query("SELECT count(*) FROM `d_file` WHERE `kid`='".$row['id']."' AND `date`>'".(time()-86400*5)."'"),0);
  29. $lastfile=mysql_query("SELECT `date` FROM `d_file` WHERE `kid`='".$row['id']."' ORDER BY `date` ASC");
  30. $lastfile=mysql_fetch_Assoc($lastfile);
  31. $lfile[]=$lastfile;
  32. $alldirs[]=mysql_result(mysql_query("SELECT count(*) FROM `d_kateg` WHERE `upid`='".$row['id']."'"),0);
  33. };
  34. $smarty->assign('DATA',$arrdata);
  35. $smarty->assign('alldirs',$alldirs);
  36. $smarty->assign('allfile',$allfile);
  37. $smarty->assign('newfile',$newfile);
  38. $smarty->assign('lfile',$lfile);
  39. $x=mysql_result(mysql_query("SELECT SUM(`size`) FROM `d_file`"),0);
  40. $num=mysql_result(mysql_query("SELECT count(*) FROM `d_file`"),0);
  41. $smarty->assign('num',$num);
  42. $smarty->assign('size',formatsize($x));
  43. };
  44. break;
  45.  
  46.  
  47. /////////////////////////////////Выводим категорию//////////////////////////////
  48. case 'kat':
  49. whereis($udata['name'],'Архив загрузок');
  50. $id=intval($_GET['id']);
  51. $sort=bug($_GET['sort']);
  52. if(!$sort){$sorted='id';};
  53. if($sort=='name'){$sorted='name ASC';};
  54. if($sort=='date'){$sorted='date DESC';};
  55. if($sort=='reit'){$sorted='reit DESC';};
  56. if($sort=='down'){$sorted='downed DESC';};
  57. $israzd=mysql_query("SELECT `file`,`kname` FROM `d_kateg` WHERE `id`='$id'");
  58. $israzd=mysql_fetch_assoc($israzd);
  59. if($israzd['file']!='yes'){
  60. $num=mysql_result(mysql_query("SELECT count(*) FROM `d_kateg` WHERE `upid`='$id'"),0);
  61. }else{
  62. $num=mysql_result(mysql_query("SELECT count(*) FROM `d_file` WHERE `kid`='$id' AND `moded`='yes'"),0);
  63. };
  64. $kname=$israzd['kname'];
  65. $adm=($udata['level']==7) ? '<br/><a href="'.BASE.ACP.'?act=adddownkateg&amp;id='.$id.'">Добавить категорию</a>' : '';
  66. $addfile=($israzd['file']=='yes') ? '<br/><a href="index.php?act=addfile&amp;kid='.$id.'">Добавить файл</a>' : '';
  67. if(!$num){textwrite('Пустой раздел!'.$adm.$addfile);}else{
  68. $smarty->assign('id',$id);
  69. $allpage=ceil($num/$onpage);
  70. if($page>$allpage){$page=$allpage;};
  71. $start=($page-1)*$onpage;
  72. if($israzd['file']!='yes'){
  73. $x=mysql_query("SELECT * FROM `d_kateg` WHERE `upid`='$id' LIMIT $start,$onpage");
  74. }else{
  75. $x=mysql_query("SELECT * FROM `d_file` WHERE `kid`='$id' AND `moded`='yes' ORDER BY $sorted LIMIT $start,$onpage");
  76. };
  77.  
  78. $arrdata=array();
  79. $allfile=array();
  80. $newfile=array();
  81. $lfile=array();
  82. $alldirs=array();
  83. $icon=array();
  84. $opis=array();
  85. $size=array();
  86. while($row=mysql_fetch_assoc($x)){
  87. $arrdata[]=$row;
  88. if($israzd['file']!='yes'){
  89. $allfile[]=mysql_result(mysql_query("SELECT count(*) FROM `d_file` WHERE `kid`='".$row['id']."'"),0);
  90. $newfile[]=mysql_result(mysql_query("SELECT count(*) FROM `d_file` WHERE `kid`='".$row['id']."' AND `date`>'".(time()-86400*5)."'"),0);
  91. $lastfile=mysql_query("SELECT `date` FROM `d_file` WHERE `kid`='".$row['id']."' ORDER BY `date` DESC");
  92. $lastfile=mysql_fetch_Assoc($lastfile);
  93. $lfile[]=$lastfile;
  94. $alldirs[]=mysql_result(mysql_query("SELECT count(*) FROM `d_kateg` WHERE `upid`='".$row['id']."'"),0);
  95. }else{
  96. $ico=pathinfo($row['path']);
  97. if(file_exists(BASE.'img/file/'.$ico['extension'].'.png')){
  98. $icon[]='<img src="'.BASE.'img/file/'.$ico['extension'].'.png" alt="" /> ';
  99. }else{
  100. $icon[]='<img src="'.BASE.'img/ava.png" alt="" width="48" height="48"/> ';
  101. };
  102. $opis[]=(!empty($row['opis'])) ? mb_substr($row['opis'],0,100) : 'отсутствует';
  103. $size[]=formatsize($row['size']);
  104. };
  105. };
  106. pagenavig($allpage,$page,'act=kat&amp;id='.$id.'&amp;sort='.$sort);
  107. $smarty->assign('DATA',$arrdata);
  108. $smarty->assign('icon',$icon);
  109. $smarty->assign('size',$size);
  110. $smarty->assign('opis',$opis);
  111. $smarty->assign('allfile',$allfile);
  112. $smarty->assign('newfile',$newfile);
  113. $smarty->assign('lfile',$lfile);
  114. $smarty->assign('alldirs',$alldirs);
  115. };
  116. $smarty->assign('addfile',$israzd['file']);
  117. $smarty->assign('kname',$israzd['kname']);
  118. break;
  119.  
  120.  
  121. ////////////////////Вывод коментариев////////////////////////////
  122. case 'komm':
  123. whereis($udata['name'],'Коментарии к загрузкам');
  124. if($avt!=1){textwrite('Только для зарегистрированых');break;};
  125. $nid=intval($_GET['id']);
  126. if(!$nid){textwrite('Пустые параметры!');break;};
  127. $tl=mysql_query("SELECT `name` FROM `d_file` WHERE `id`='$nid'");
  128. if(!mysql_num_rows($tl)){textwrite('Такого файла не существует!');break;};
  129. $smarty->assign('nid',$nid);
  130. $num=mysql_result(mysql_query("SELECT count(*) FROM `d_komm` WHERE `s_id`='$nid'"),0);
  131. $smarty->assign('num',$num);
  132. if($num){
  133. $allpage=ceil($num/$onpage);
  134. if($page>$allpage){$page=$allpage;};
  135. $start=($page-1)*$onpage;
  136. $x=mysql_query("SELECT * FROM `d_komm` WHERE `s_id`='$nid' ORDER BY `komm_id` DESC LIMIT $start,$onpage");
  137. $arrdata=array();
  138. $isus=array();
  139. $ava=array();
  140. $isonline=array();
  141. while($row=mysql_fetch_assoc($x)){
  142. $isus[]=mysql_result(mysql_query("SELECT count(*) FROM `user` WHERE name='".bug($row['komm_name'])."'"),0);
  143. $arrdata[]=$row;
  144. $ava[]=ava($row['komm_name']);
  145. $isonline[]=isonline($row['komm_name']);
  146. };
  147. pagenavig($allpage,$page,'act=komm&amp;id='.$nid);
  148. $smarty->assign('DATA',$arrdata);
  149. $smarty->assign('ava',$ava);
  150. $smarty->assign('isus',$isus);
  151. $smarty->assign('isonline',$isonline);
  152. };
  153. break;
  154.  
  155.  
  156. ///////////////////////Добавление коментариев//////////////////////
  157. case 'addkomm':
  158. whereis($udata['name'],'Добавление коментария к файлу');
  159. $nid=intval($_POST['nid']);
  160. if(!$nid){textwrite('Пустые параметры!');break;};
  161. $isfile=mysql_query("SELECT * FROM `d_file` WHERE `id`='$nid' LIMIT 1");
  162. if(!mysql_num_rows($isfile)){textwrite('Такого файла не существует!');break;};
  163.  
  164. $name=$udata['name'];
  165. if(!$name || !$_POST['msg']){textwrite('Вы не ввели сообщение!');break;};
  166. $msg=antimat(bbcode(smile(bug($_POST['msg']))));
  167. $last=mysql_query("SELECT `komm_msg` FROM `d_komm` ORDER BY `komm_id` DESC LIMIT 0,1");
  168. $last=mysql_fetch_assoc($last);
  169. if($msg==$last['msg'] || $_SESSION['flud']>time()){textwrite('Не пишите так быстро!');break;};
  170. mysql_query("INSERT INTO `d_komm` (`s_id`,`komm_name`,`komm_msg`,`komm_date`,`ip`,`brows`)VALUES('$nid','$name','$msg','".time()."','$ip','$brows')");
  171. mysql_query("UPDATE `user` SET `bal`=`bal`+'".$sysconf['balfordownkomm']."',`komm_down`=`komm_down`+1 WHERE name='".$udata['name']."'");
  172. $_SESSION['flud']=time()+$sysconf['flud'];
  173. $smarty->assign('nid',$nid);
  174. break;
  175.  
  176.  
  177. //////////////////////////////////Скачка файла//////////////////////////////////
  178. case 'file':
  179. whereis($udata['name'],'Скачивание файла с архива');
  180. $id=intval($_GET['id']);
  181. if(!$id){textwrite('Пустые параметры!');break;};
  182. $x=mysql_query("SELECT * FROM `d_file` WHERE `id`='$id' AND `moded`='yes'");
  183. if(!mysql_num_rows($x)){textwrite('Такого файла не существует!');break;};
  184. mysql_query("UPDATE `d_file` SET `look`=`look`+1 WHERE `id`='$id'");
  185. $file=mysql_fetch_array($x);
  186. $smarty->assign('file',$file);
  187. $e=explode('.',$file['path']);
  188. $ext=$e[count($e)-1];
  189. if($ext=='gif' || $ext=='jpg' || $ext=='bmp' || $ext=='jpeg'){
  190. $skrin='<img src="im.php?w=80&amp;h=80&amp;id='.$file['id'].'"/>';}
  191. elseif($ext=='3gp' || $ext=='mp4' || $ext=='3gpp'){
  192. $skrin='<img src="ffmpeg.php?w=80&amp;h=80&amp;id='.$file['id'].'"/>';}
  193. elseif(!empty($file['skrin'])){
  194. $skrin='<img src="'.BASE.'down/screen/'.$file['skrin'].'" width="80" height="80"/>';
  195. }else{$skrin='';};
  196. $opis=(!empty($file['opis'])) ? '<b>Описание:</b> '.$file['opis'] : '';
  197. $komm=mysql_result(mysql_query("SELECT count(*) FROM `d_komm` WHERE `s_id`='".$file['id']."'"),0);
  198. $avtor=(!$file['avtor']) ? '<b>Администрация</b>' : '<a href="'.BASE.'sys/anketa.php?id='.$file['avtor'].'">'.$file['avtor'].'</a>';
  199. $smarty->assign('opis',$opis);
  200. $smarty->assign('komm',$komm);
  201. $smarty->assign('avtor',$avtor);
  202. $smarty->assign('ext',$ext);
  203. $smarty->assign('size',formatsize($file['size']));
  204. $smarty->assign('skrin',$skrin);
  205. break;
  206.  
  207.  
  208.  
  209. /////////////////////////////////////Топ 25/////////////////////////////////////
  210. case 'top':
  211. $order=bug($_GET['order']);
  212. $smarty->assign('order',$order);
  213. if($order){
  214. if($order=='new'){$by='id DESC';$slog='новых';}
  215. elseif($order=='reit'){$by='reit DESC';$slog='рейтинговых';}
  216. else{$by='downed DESC';$slog='скачиваемых';};
  217. $smarty->assign('slog',$slog);
  218. $x=mysql_query("SELECT * FROM `d_file` ORDER BY $by LIMIT 25");
  219. if(!mysql_num_rows($x)){textwrite('Нет файлов!');break;};
  220. $arrdata=array();
  221. $size=array();
  222. while($row=mysql_fetch_assoc($x)){
  223. $arrdata[]=$row;
  224. $size[]=formatsize($row['size']);
  225. };
  226. $smarty->assign('DATA',$arrdata);
  227. $smarty->assign('size',$size);
  228. };
  229. break;
  230.  
  231.  
  232. //////////////////////////////////Поиск файлов//////////////////////////////////
  233. case 'search':
  234. $_SESSION['code']=rand(1111,9999);
  235. break;
  236.  
  237.  
  238. //////////////////////////////////Поиск////////////////////////////////
  239. case 'searchgo':
  240. $code=(!$_POST['code']) ? (int)$_GET['code'] : (int)$_POST['code'];
  241. if(!$code || $code!=$_SESSION['code']){textwrite('Не правильный код!');unset($_SESSION['code']);break;};
  242. $text=bug($_POST['str']);
  243. $sin=bug($_POST['sin']);
  244. if(!$text){$text=bug($_GET['text']);}
  245. if(!$sin){$sin=bug($_GET['sin']);};
  246. if(!$sin || !$text || strlen($text)<3){textwrite('Пустые параметры!');break;};
  247. if($sin=='title'){$sin='name';};
  248. if($sin=='text'){$sin='opis';};
  249. $num=mysql_result(mysql_query("SELECT count(*) FROM `d_file` WHERE $sin LIKE '%$text%'"),0);
  250. if(!$num){textwrite('Нет совпадений!');break;};
  251. $onpage=15;
  252. $allpage=ceil($num/$onpage);
  253. if($page>$allpage){$page=$allpage;};
  254. $start=($page-1)*$onpage;
  255. $smarty->assign('num',$num);
  256. $x=mysql_query("SELECT `id`,`name` FROM `d_file` WHERE $sin LIKE '%$text%' LIMIT $start,$onpage");
  257. $arrdata=array();
  258. while($row=mysql_fetch_assoc($x)){
  259. $arrdata[]=$row;
  260. };
  261. $smarty->assign('DATA',$arrdata);
  262. pagenavig($allpage,$page,'act=searchgo&amp;sin='.$sin.'&text='.$text.'&code='.$code);
  263. break;
  264.  
  265.  
  266. case 'addfile':
  267. if($avt!=1){textwrite('Только для зарегистрированых!');break;};
  268. $kid=intval($_GET['kid']);
  269. if(!$kid){textwrite('Пустые параметры!');break;};
  270. $iskat=mysql_query("SELECT * FROM `d_kateg` WHERE `id`='$kid' AND `file`='yes'");
  271. if(!mysql_num_rows($iskat)){textwrite('Такой категории не существует!');break;};
  272. $iskat=mysql_fetch_assoc($iskat);
  273. $smarty->assign('kid',$kid);
  274. $smarty->assign('kname',$iskat['kname']);
  275. break;
  276.  
  277. case 'savefile':
  278. if($avt!=1){textwrite('Только для зарегистрированых!');break;};
  279. $kid=intval($_GET['kid']);
  280. if(!$kid){textwrite('Пустые параметры!');break;};
  281.  
  282. $iskat=mysql_query("SELECT * FROM `d_kateg` WHERE `id`='$kid' AND `file`='yes'");
  283. if(!mysql_num_rows($iskat)){textwrite('Такой категории не существует!');break;};
  284. $iskat=mysql_fetch_assoc($iskat);
  285. if(empty($_FILES['file'])){textwrite('Файл не выбран');break;};
  286. if($_FILES['file']['error']>0){textwrite('Ошибка при загрузке файла!');break;};
  287. if($_FILES['file']['size']>(1000*15000)){textwrite('Слишком большой размер файла!');break;};
  288. $_FILES['file']['name']=bug($_FILES['file']['name']);
  289. $ex=pathinfo($_FILES['file']['name']);
  290. $ext=mb_strtolower($ex['extension']);
  291. if(!preg_match('/gif$|jpg$|jpeg$|png$|mp3$|mp4$|3gp$|3gpp$|zip$|rar$|jar$|jad$/isU',$ext)){
  292. textwrite('Попытка загрузки запрещонного расширения '.$ext.'! Администрация уведомлена!');break;
  293. };
  294. $r=time();
  295. if(@move_uploaded_file($_FILES['file']['tmp_name'],BASE.'down/file/userfile/'.$r.$_FILES['file']['name'])){
  296. $size=filesize(BASE.'down/file/userfile/'.$r.$_FILES['file']['name']);
  297. $path='userfile/'.$r.$_FILES['file']['name'];
  298. $name=$_FILES['file']['name'];
  299. $opis=bug($_POST['opis']);
  300. if(!empty($_FILES['skrin']) && $_FILES['skrin']['error']<1 && $_FILES['file']['size']<=(1024*500)){
  301. $ex=pathinfo($_FILES['skrin']['name']);
  302. $ext=mb_strtolower($ex['extension']);
  303. if(preg_match('/gif$|jpg$|jpeg$|png$/isU',$ext)){
  304. $skrinname=bug($_FILES['skrin']['name']);
  305. $sst=time();
  306. if(@move_uploaded_file($_FILES['skrin']['tmp_name'],BASE.'down/screen/'.$sst.$skrinname)){
  307. $skrin=$sst.$skrinname;
  308. };
  309. };
  310. };
  311. $moded=($udata['level']==7 || $udata['level']==4) ? 'yes' : '';
  312. mysql_query("INSERT INTO `d_file` (`kid`,`name`,`path`,`skrin`,`size`,`opis`,`date`,`avtor`,`moded`)VALUES('$kid','$name','$path','$skrin','$size','$opis','".time()."','".$udata['name']."','$moded')");
  313. mysql_query("UPDATE `user` SET `bal`=`bal`+'".$sysconf['balforfile']."' WHERE `id`='".$udata['id']."'");
  314. }else{textwrite('Ошибка!');break;};
  315. $smarty->assign('kid',$kid);
  316. $smarty->assign('kname',$iskat['kname']);
  317. break;
  318.  
  319. };
  320.  
  321. $smarty->display('download.tpl');
  322. ?>