<?php
//vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
// YAZAR : ANILCAN ERÇOLAK
// www.anilcanercolak.com - destek@gelisimweb.com
//^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
//Maksimum Dosya Boyutu.
$MAX_SIZE = 2000000;
//İzinli Dosya Uzantıları (Örneğin image/gif olarak daha eklenebilir.)
$FILE_MIMES = array(''image/jpeg'',''image/jpg'');
$FILE_EXTS = array(''.jpg'',''.jpeg'');
$DELETABLE = true;
$site_name = $_SERVER[''HTTP_HOST''];
$url_dir = "http://".$_SERVER[''HTTP_HOST''].dirname($_SERVER[''PHP_SELF'']);
$url_this = "http://".$_SERVER[''HTTP_HOST''].$_SERVER[''PHP_SELF''];
$upload_dir = "galeri/";
$upload_url = $url_dir."/galeri/";
$message ="";
$rastgele =substr(md5(uniqid(rand())),0,10);
$yeniad = $rastgele;
/************************************************************
* Yüklenecek Klasörü Oluşturma
************************************************************/
if (!is_dir("galeri")) {
if (!mkdir($upload_dir))
die ("upload_files directory doesn''t exist and creation failed");
if (!chmod($upload_dir,0755))
die ("change permission to 755 failed.");
}
/************************************************************
* Verileri İşleme
************************************************************/
if ($_REQUEST[del] && $DELETABLE) {
$resource = fopen("log.txt","a");
fwrite($resource,date("Ymd h:i:s")."DELETE - $_SERVER[REMOTE_ADDR]"."$_REQUEST[del]\n");
fclose($resource);
if (strpos($_REQUEST[del],"/.")>0);
else if (strpos($_REQUEST[del],$upload_dir) === false);
else if (substr($_REQUEST[del],0,6)==$upload_dir) {
unlink($_REQUEST[del]);
print "<script>window.location.href=''$url_this?message=deleted successfully''</script>";
}
}
else if ($_FILES[''userfile'']) {
$resource = fopen("log.txt","a");
fwrite($resource,date("Ymd h:i:s")."UPLOAD - $_SERVER[REMOTE_ADDR]"
.$_FILES[''userfile''][''name'']." "
.$_FILES[''userfile''][''type'']."\n");
fclose($resource);
$file_type = $_FILES[''userfile''][''type''];
$file_name = $_FILES[''userfile''][''name''];
$file_ext = strtolower(substr($file_name,strrpos($file_name,".")));
//Dosya Boyutu Kontrol
if ( $_FILES[''userfile''][''size''] > $MAX_SIZE)
$message = "Dosya 2 Mb ''dan büyük !.";
//Dosya Tipi Kontrol
else if (!in_array($file_type, $FILE_MIMES)
&& !in_array($file_ext, $FILE_EXTS) )
$message = "$file_name($file_type) dosya tipine izin yok.";
else
$message = do_upload($upload_dir, $upload_url);
print "<script>window.location.href=''$url_this?message=$message''</script>";
}
else if (!$_FILES[''userfile'']);
else
$message = "Hata.";
$handle=opendir($upload_dir);
$filelist = "";
while ($file = readdir($handle)) {
if(!is_dir($file) && !is_link($file)) {
$filelist .= "<a href=''$upload_dir$file''>".$file."</a>";
if ($DELETABLE)
$filelist .= " <a href=''?del=$upload_dir$file'' title=''delete''>x</a>";
$filelist .= "<sub><small><small><font color=grey> ".date("d-m H:i", filemtime($upload_dir.$file))
."</font></small></small></sub>";
$filelist .="<br>";
}
}
function do_upload($upload_dir, $upload_url) {
$temp_name = $_FILES[''userfile''][''tmp_name''];
$file_name = $_FILES[''userfile''][''name''];
$file_name = str_replace("\\","",$file_name);
$file_name = str_replace("''","",$file_name);
$rastgele =substr(md5(uniqid(rand())),0,10);
$yeniad = $rastgele.$file_name;
$file_path = $upload_dir.$yeniad;
if ( $file_name =="") {
$message = "Invalid File Name Specified";
return $message;
}
$result = move_uploaded_file($temp_name, $file_path);
// veritabanına yazıyoruz ... resimler tablosu ==> id , resim
$q=mysql_query("insert into resimler values ('''',''".$yeniad."'')");
if($q) echo "Resim Başarıyla Yüklendi.";
// alt iki satırda dosyayı belirliyor be onu % kaç resize edicemiyi yazıoz.
$filename = "galeri/".$yeniad;
$percent = 0.5;
header("Content-type: image/jpeg");
// ve seçilen yüzdelik(percent) ile yeni boyutlarımızı oluşturuyoz.
list($width, $height) = getimagesize($filename);
$newwidth=100;
$newheight=100;
// artık kaynağı yeni boyutları ile harmanladık.
$thumb = imagecreatetruecolor($newwidth, $newheight);
$source = imagecreatefromjpeg($filename);
// resim bu bölümde son halini yani yeni boyutlarını aldı
imagecopyresampled($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
// ve dosyayı istenen % olarak kalite ile istenen adrese kaydettik
imagejpeg($thumb,"galerik/".$yeniad, 100);
////////////////////////////////////////////////////////////////////
// ANILCAN ERÇOLAK
// WWW.anilcanercolak.COM - destek@gelisimweb.com
////////////////////////////////////////////////////////////////////
if (!chmod($file_path,0777))
$message = "klasör izin ayarlarını 777 olarak ayarlayın.";
else
$message = ($result)?"$file_name Başarıyla Yüklendi." :
"Hatalı Yükleme !";
return $message;
}
?>
<form name="upload" id="upload" ENCTYPE="multipart/form-data" method="post">
<table align="center" cellpadding="2" cellspacing="2">
<tr>
<td class="border"> Resim : </td>
<td class="border"><input type="file" id="userfile" name="userfile" class="input"></td>
</tr>
<tr>
<td colspan="2" class="border"><center><input type="submit" name="upload" value="Ekle" class="input2"> </center></td>
</tr>
</table>
<br>
</form>
<font color=red><?=$_REQUEST[message]?></font>
</center>
<?
////////////////////////////////////////////////////////////////////
// ANILCAN ERÇOLAK
// WWW.anilcanercolak.COM - destek@gelisimweb.com
////////////////////////////////////////////////////////////////////
?>
anılcan erçolak
www.anilcanercolak.com