-
26.
+3Alın lan son yazdığım dosya yükleme sınıfını sizinle paylaşayım ilk. henüz geliştirilme aşamasındadır, fakat çalışır haldedir.Tümünü Göster
3. ################################################
Dosya yükleme sınıfı - donanimi guvenle kaldirdim
4. ################################################
<?php
class file_upload
{
var $file;
var $file_name;
var $file_new_name;
var $file_size;
var $file_type;
var $error_message;
public $fix_chars = true;
public $max_file_size = 10485760;
public $upload_directory = "uploads/";
public $file_permissions = 777;
public $allowed_extensions = array("mp3","wma","wav","flac","ogg","mp4","png","gif","jpg","jpeg","bmp","txt","pdf","odt","doc","docx","rtf");
function __construct($key)
{
$this->file = $_files[$key];
$this->file_name = $this->file["name"];
$this->file_tmp = $this->file["tmp_name"];
$this->file_size = $this->file["size"];
$info = pathinfo($this->file_name);
$this->file_type = $info["extension"];
$this->file_org_name = $info["filename"];
}
public function upload()
{
if(!$this->extension_check())
return false;
if(!$this->size_check())
return false;
if(!$this->directory_check())
return false;
if(!$this->permission_check())
return false;
if($this->fix_chars == true)
{
if($this->file_new_name != "")
$this->file_org_name = $this->file_new_name;
$this->file_name = $this->file_rename($this->file_org_name).".".$this->file_type;
}
if (@move_uploaded_file($this->file_tmp, $this->upload_directory. $this->file_name))
return $this->file_name;
else
{
$this->set_error(5);
return false;
}
}
private function is_file_uploaded()
{
}
private function file_rename($text)
{
$text = trim($text);
$keys = array('ç','ç','ğ','ğ','ı','i̇','ö','ö','ş','ş','ü' ,'ü','é',',','_',' ','.','!','+','%','&','/','(',')','[',']','{','}','*','?','$','#','\','>','<','=',''','"',':','@','€','´','^');
$to = array('c','c','g','g','i','i','o','o','s','s','u','u','e','-','-','-',,,,,,,,,,,,,,,,,,,,,,,'"',,,,,'');
$text = str_replace($keys,$to, $text);
return strtolower($text);
}
private function extension_check()
{
if(in_array($this->file_type, $this->allowed_extensions))
return true;
else
{
$this->set_error(1);
return false;
}
}
private function size_check()
{
if($this->max_file_size > $this->file_size)
return true;
else
{
$this->set_error(2);
return false;
}
}
private function directory_check()
{
if(is_dir($this->upload_directory))
return true;
else
{
$this->set_error(3);
return false;
}
}
private function permission_check()
{
if(is_writable($this->upload_directory))
return true;
else
{
$this->set_error(4);
return false;
}
}
private function set_error($error_code)
{
switch ($error_code)
{
case 1:
$msg = 'kabul edilmeyen dosya türü.';
break;
case 2:
$msg = 'dosya boyutu izin verilenden fazla. i̇zin verilen dosya boyutu ' . $this->max_file_size . " byte - " . $this->file_size;
break;
case 3:
$msg = 'dizin bulunamadı.';
break;
case 4:
$msg = 'dizine yazım izni yok.';
break;
case 5:
$msg = 'dosya yüklenemedi!';
break;
default:
$msg = 'bilinmeyen hata.';
}
$this->error_message = $msg;
}
public function get_error()
{
return $this->error_message;
}
}
?>
-
reis alfa kralın annesi bana sitem ediyor
-
cayda lipton o anayin
-
enguzelhalinle ifşa
-
cfrkn günaydın başlığına kabul ediliyor
-
günaydın kelimesi icat edilmeseydi maxosman
-
melek entryi sil şifreyi randomla çıkış yap
-
cfrkn ne haber dost
-
kendine layık bişey buldun mu spastik dostum
-
su karıyı bile
-
31 spor bu ne rezillik la
-
zuahdjdksöcçax
-
erkek dediğin kıllı sakallı ayı gibi bişi olur aga
-
hayatt artıgı ne haber dosstum
-
cfkrn ananın kafasını kaldırım taşıyla ezip
-
elmalı yulaf diye bi karı vardı la
-
lipton karınla barışta gibtir git sozlukten amk
-
kayra sözlüğün yarısı allahsız yarısı da kitapsız
-
kanzi görecelik teorisi falan
-
kirmizi pelerinli ve konstant şakaları
-
testo taylan burası sefalet atolyem ev ziyareti
-
reis beta kral adabıyla sövmeyi bile beceremeyen
-
piyo kız senin yanında domalsa
-
piyonun bahsi geçen buluşması
-
olm ben bu adamlarla sözlükte bile pmleşmiyorum
-
yeni bir sözlük iconu doğuyor aga
-
bu ne oglim hippi misin sen
-
benim adım ucan kedi
-
şu attığı emojiler bile irrite ediyor
-
reis alfa kral entrylerin güldürmüyor
-
bu axentonun
- / 2