Download Script : http://hotfile.com/dl/65718841/941bde5/upload.rar.html
Kullanıcılarımızın sitemize dosya yüklemelerini istediğimiz zaman, file upload scriptlerine başvururuz. Bunları sitemize entegre olarak sağlamamız gerektiğinde bu scriptlerin en basitine ulaşmamız gerekir. Çünki scriptin en basit hali daha rahat entegre edilir.
Şimdi sizlere file upload yapısını en basit şekilde anlatacağım. Öncelikle bir html kullanarak bir dosya yükleme form u yapalım.
<html> <body> <form action="yukle.php" method="post" enctype="multipart/form-data"> <label for="file">Filename:</label> <input type="file" name="file" id="file" /> <br /> <input type="submit" name="submit" value="Submit" /> </form> </body> </html>Yukarıda bir dosya yükleme formu oluşturduk. ve yukle.php’ye dosyayı gönderiyoruz.
<?php
if ($_FILES["file"]["error"] > 0)
{
echo "Hata: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Dosya: " . $_FILES["file"]["name"] . "<br />";
echo "Tip: " . $_FILES["file"]["type"] . "<br />";
echo "Boyut: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Nerede: " . $_FILES["file"]["tmp_name"];
}
?>Yukarıda yukle.php dosyamızın kodlarını görüyorsunuz, Şimdi bu dosyamızda ki tüm değerleri bi inceleyelim.* $_FILES["file"]["name"] – dosyamızın adı
* $_FILES["file"]["type"] – dosyamızın tipi
* $_FILES["file"]["size"] – dosyamızın boyutu
* $_FILES["file"]["tmp_name"] – Dosyaların geçici olarak saklandığı yer
* $_FILES["file"]["error"] – bir hata durumunda alacağım sonuç
Şimdi yükleme ile ilgili sınırlamalarımız olacak, onları inceleyelim!
<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
{
if ($_FILES["file"]["error"] > 0)
{
echo "hata: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "dosya: " . $_FILES["file"]["name"] . "<br />";
echo "tip: " . $_FILES["file"]["type"] . "<br />";
echo "boyut: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "nerede: " . $_FILES["file"]["tmp_name"];
}
}
else
{
echo "geçersiz dosya";
}
?>Şimdi yukarıdaki yapıda, bir üstteki yukle.php ye ek olarak if yapısıyla dosyamızın uzantısını kontrol ettiriyoruz. ve sadece gif/jpeg/pjpeg dosyaları ile boyutu 20000 byte ın altında olan dosyaların ilerlemesini sağlıyoruz.NOT : $_FILES["file"]["size"] her zaman byte açısından sonuç verir, /1024 yaparak kb değerine ulaşabiliriz.
Şimdi yukarıdaki dosyayı, kalıcı olarak bi klasöre alacağız. Ve Upload işlemimizi sonuçlandıracağız.
<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
{
if ($_FILES["file"]["error"] > 0)
{
echo "hata: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "dosya: " . $_FILES["file"]["name"] . "<br />";
echo "tip: " . $_FILES["file"]["type"] . "<br />";
echo "boyut: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "nerede: " . $_FILES["file"]["tmp_name"];
if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " zaten var. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Başarılı : " . "upload/" . $_FILES["file"]["name"];
}
}
}
else
{
echo "Geçersiz dosya";
}
?>Bir önce yukle.php ye ek olarak geçici klasöre aldığımız dosyayı kendimiz için belirlediğimiz bir klasöre taşıyacağız. Yukarıda şimdi file_exists(“upload/” . $_FILES["file"]["name"]) komutuyla upload dizinimizde aynı dosya varmı kontrol ediyoruz. Eğer yoksa, move_uploaded_file($_FILES["file"]["tmp_name"],”upload/” . $_FILES["file"]["name"]); komutuyla dosyamızı geçici klasörümüzden upload klasörümüze taşıyoruz. Hepsi bu kadar!NOT : upload klasörümüz geçici klasörümüzün CHMOD değeri 777 olmalıdır!
Başlangıç Olarak İyi Bir Anlatım Fakat bu Scriptle Yapılan uploadlar zamanla çalışmamaya başlayabilir Neden derseniz yüklediğiniz resimlerde türkçe karakter olabilceğinden