PHP Dosya Upload
Merhabalar… yeni yazımda sizlere Okul Sayfası için yazdığım php de dosya upload(yükleme) uygulamasının kodlarını paylaşacağım.
Yazdığım dosya upload scriptinde istenilen dosya uzantılarını ve isimlerini engelleyebiliyorsunuz. scripti fonksiyon olarak tanımladım, böylece fonksiyonlar.php ye yükleyip tüm sitenizde kullanabilirsiniz.
Türkçe, boşluk vb karakterler otomatik olarak temizleniyor.
Hayırlı olsun… kodlar
dosya upload edecek html sayfası: (upload_yolla.php)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd</a>"> <html xmlns="<a href="http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml</a>"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Dahiweb Dosya Upload Fonksiyonu</title> </head> <body> <form action="upload.php" method="post" enctype="multipart/form-data"> <label for="file">Dosyayı seçiniz:</label> <input type="file" name="file" id="file" /> <br /> <input type="submit" name="submit" value="Submit" /> </form> </body> </html> |
aşağıda php upload fonksiyonunun kodlarını bulabilirsiniz (upload.php)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd</a>"> <html xmlns="<a href="http://www.w3.org/1999/xhtml">http://www.w3.org/1999/xhtml</a>"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Dahiweb Upload Fonksiyonu</title> </head> <body> <p> <?php // php|jsp|asp|htm|html|shtml|cgi function upload ($dizin) { $uzanti=end(explode(".",strtolower($_FILES["file"]["name"]))); //echo $uzanti; if ( ($uzanti== "jsp") || ($uzanti== "php") || ($uzanti== "pl") || ($uzanti== "htm") || ($uzanti== "html") || ($uzanti== "shtml") || ($uzanti== "cgi") || ($uzanti== "php3") || ($_FILES["file"]["name"]==".htaccess") ) {echo "bu dosya türünün yüklenmesine izin verilmiyor"; } else { if ($_FILES["file"]["error"] > 0) { echo "Return Code: " . $_FILES["file"]["error"] . "<br />"; } else {$file_ismi=turkcele($_FILES["file"]["name"]); echo "<br />Dosya adı: " . $file_ismi . "<br />"; echo "Yeri: ".$dizin."/".$file_ismi. "<br />"; // echo "Tip: " . $_FILES["file"]["type"] . "<br />"; echo "Boyut: " . ceil(($_FILES["file"]["size"] )/1024) . " Kb<br />"; // echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />"; if (file_exists("$dizin/" . $_FILES["file"]["name"])) { echo $_FILES["file"]["name"] . " Aynı isimle sunucuya yüklenen başka bir dosya var. "; } else {$file_ismi=turkcele($_FILES["file"]["name"]); move_uploaded_file($_FILES["file"]["tmp_name"], "$dizin/" . $file_ismi); // echo "Stored in: " . "$dizin/" . $_FILES["file"]["name"]; // echo "<br >file ismi=$file_ismi<br >"; } } } } function turkcele($metin) { //$bul=$_FILES["resim"] ; $bulunacak = array('ç','Ç','ı','İ','ğ','Ğ','ü','ö','Ş','ş','Ö','Ü',',',' ','(',')','[',']','-'); $degistir = array('c','C','i','I','g','G','u','o','S','s','O','U','','_','','','','','_'); $sonuc=str_replace($bulunacak, $degistir, $metin); return $sonuc; } if ($_FILES["file"]["name"]) upload("upload2"); ?> </p> <p><a href="uplad_yolla.php">upload yolla </a></p> </body> </html> |
upload(“upload2”); dediğimizde upload fonksiyonunu çağırıp, “upload2” klasörüne dosyayı yüklemesini söylüyoruz.