Merhaba,
Birkaç gündür bir form yapmaya çalışıyorum daha doğrusu formu yaptım sorunsuz çalışıyor fakat bu forma birde dosya ekleme özelliği koymak istiyorum. Mesela ziyaretçi iletişim için formu doldurdu ve eklemek istediği bir dosya varsa bu dosya resim olabilir yada bir text dosyası olabilir ekleyecek ve bu dosya yazdığı diğer form bilgileri bana mail ile gelicek yani herhangi bir dosyada bilgileri depolama yada veritabanında saklama durumu yok direk mail olarak bana geliyor ve bir bilgilendirme mailide karşı tarafa gidiyor. Formda bu yukarıdakilerin form ve gönderme kısmı tamam fakat bir türlü dosya ekleme özelliğini ekleyemedim. Birçok örnek denememe rağmen pek birşey anlayamadım daha başlangıç seviyesindeyim diyebiliriz. Bu formu ziyaretçiler görebilecek yani isteyen birisi gelip dosya ekleyebilir bu yüzden birazda güvenli bir kod olması lazım ve benimde şu anki bilgilerimle bu güvenliği sağlamam sanırım olanaksız çünkü bakıyorum birçok script dosyanın yükleneceği klasörün izinlerini 777 yapın diyor buda sanırım bir güvenlik açığı yaratabilir. Bu konuda bilgisi olan bir arkadaşımız beni bu konuda bilgilendirirse ve mümkünse bir aceminin anlayacağı dilden bir örnek verebilirse sevinirim.
Teşekkürler,
Dosya ekleme ozelligi olan bir form
9
●4.193
- 29-11-2007, 23:50:35klasörünü chmod 0777 yapmadan yükleyemezsin.Bunu yapman gerekiyor.Zaten dosyanın yolunu kullanıcı görmeyecek sadece sen göreceksin.
Kodlamada ise
move_uploaded_file foksiyonunu kullanıp edeceksin.
kısa bir örnek
$dizin='dosyalar'; move_uploaded_file($_FILES["dosyam"]["tmp_name"], $dizin);
dosyalar klasorunun chmod ayarını 0777 yapacaksın. - 29-11-2007, 23:56:44Peki klasörün izni 0777 olduğunda herhangi bir sorunla karşılaşmazmıyım ? Yani hacklenmem gibi bir durum söz konusu olabilirmi ?
Bir başka soru sanırım şu mantıkla yapmalıyım, ilk önce dosyayı upload etmeliyim klasöre daha sonra klasördeki eklenen dosyaları maıle attachment olarak eklemeliyim. Peki burda dosyaları klasörden çektik diyelim maile ekledik burada nasıl bir işlem yapmalıyım ?
En çok merak ettiğim konulardan biri böyle bir form güvenlik açığı yaratırmı ve yaratırsa bu açıkları nasıl kapatabilirim ?
Teşekkürler, - 29-11-2007, 23:58:50Üyeliği durdurulduMike adlı üyeden alıntı: mesajı görüntüle
move_uploaded_file komutu is_uploaded_file haricinde hata verebiliyor..Zaten komut taşımada kullanılır önce tmp e alıcaz dosyayı sonra taşıyacagız istediğimiz klasöre... - 30-11-2007, 00:01:09dosya turu olarak text dosyası word, excel dosyaları yada jpg onun dışında herhangi bir dosya eklenmesi olmayacak. Birde benim istediğim basit bir kodlama yani basit bir iletişim formu sadece dosya ekleme özelliği olucak bunun için gelişmiş bir script kurmamın gereği yok diye düşündüm kodlamayı öğrenebilmek için burada sordum.
Bilmiyorum ne kadar doğru düşünüyorum. - 30-11-2007, 00:08:28Üyeliği durduruldu
<? $dosyatip = $_FILES['dosya']['type']; if($dosyatip != "image/jpeg" && $dosyatip != "image/pjpeg" && $dosyatip != "image/gif"){ echo "sadece jpeg ve gif dosyaları"; } else { echo "Upload başarolı"; } ?>Resim için kontrol kodları basitçe..Ama bu olay bu kadar basit değil,boyut,genişlik,yükseklik,local,remote bi sürü veri kontrol etmelisin...Araştır biraz işin kolayına kaçma yüzlerce makale vardır bu konuyla ilgili...