View file comm/obmen/inc/upload_act.php

File size: 2.42Kb
  1. <?
  2. if($dir_id['upload']==1 && $admin['uid']==$user['id'] && (!isset($set['obmen_limit_up']) || $set['obmen_limit_up']<=$user['balls'])){
  3.  
  4. if(isset($_GET['act']) && $_GET['act']=='upload' && isset($_GET['ok']) && $l!='/'){
  5.  
  6. if(!isset($_FILES['file'])){
  7. $err[]='Ошибка при выгрузке файла';
  8. }else if(!isset($_FILES['file']['tmp_name']) || filesize($_FILES['file']['tmp_name'])>$dir_id['maxfilesize']){
  9. $err[]='Размер файла превышает установленные ограничения';
  10. }else{
  11. $file=esc(stripcslashes(htmlspecialchars($_FILES['file']['name'])));
  12. $file=ereg_replace('(#|\?)', NULL, $file);
  13. $name=eregi_replace('\.[^\.]*$', NULL, $file);
  14. $ras=strtolower(eregi_replace('^.*\.', NULL, $file));
  15. $type=$_FILES['file']['type'];
  16. $size=filesize($_FILES['file']['tmp_name']);
  17. $rasss=explode(';', $dir_id['ras']);
  18. $ras_ok=false;
  19.  
  20. for($i=0;$i<count($rasss);$i++){
  21.  
  22. if($rasss[$i]!=NULL && $ras==$rasss[$i]){
  23. $ras_ok=true;
  24. }
  25. }
  26.  
  27. if(!$ras_ok){
  28. $err='Неверное расширение файла';
  29. }
  30. }
  31.  
  32. $opis=NULL;
  33.  
  34. if(isset($_POST['opis'])){
  35. $opis=stripslashes(htmlspecialchars(esc($_POST['opis'])));
  36. }
  37.  
  38. if(!isset($err)){
  39. mysql_query("INSERT INTO `comm_obmen_files` (`id_comm`, `id_dir`, `name`, `ras`, `type`, `size`, `time`, `time_last`, `id_user`, `opis`) VALUES ('$id_comm', '$dir_id[id]', '$name', '$ras', '$type', '$size', '$time', '$time', '$user[id]', '$opis')");
  40. $id_file=mysql_insert_id();
  41.  
  42. if(!@copy($_FILES['file']['tmp_name'], H."sys/comm/obmen/files/$id_file.dat")){
  43. mysql_query("DELETE FROM `comm_obmen_files` WHERE `id` = '$id_file' AND `id_comm` = '$id_comm' LIMIT 1");
  44. $err[]='Ошибка при выгрузке';
  45. }
  46. }
  47.  
  48. if(!isset($err)){
  49.  
  50. chmod(H."sys/comm/obmen/files/$id_file.dat", 0666);
  51.  
  52. if(isset($_FILES['screen']) && $imgc=@imagecreatefromstring(file_get_contents($_FILES['screen']['tmp_name']))){
  53. $img_x=imagesx($imgc);
  54. $img_y=imagesy($imgc);
  55.  
  56. if($img_x==$img_y){
  57. $dstW=128; // ширина
  58. $dstH=128; // высота
  59. }elseif ($img_x>$img_y){
  60. $prop=$img_x/$img_y;
  61. $dstW=128;
  62. $dstH=ceil($dstW/$prop);
  63. }else{
  64. $prop=$img_y/$img_x;
  65. $dstH=128;
  66. $dstW=ceil($dstH/$prop);
  67. }
  68.  
  69. $screen=imagecreatetruecolor($dstW, $dstH);
  70. imagecopyresampled($screen, $imgc, 0, 0, 0, 0, $dstW, $dstH, $img_x, $img_y);
  71. imagedestroy($imgc);
  72. $screen=img_copyright($screen);
  73. imagegif($screen,H."sys/comm/obmen/screens/128/$id_file.gif");
  74. imagedestroy($screen);
  75. }
  76. }
  77. }
  78. }
  79. ?>