• 10-04-2009, 02:00:47
    #37
    Üyeliği durduruldu
    eyvallah hocam sabah denerim kafa bi milyon oldu yardımın için tekrar teşekkrler ((:
  • 10-04-2009, 02:43:27
    #38
    Yukarıdaki kodda dosya kontrolü yapılmadığından güvenlik problemi çıkabilir. Persist MIME Type'ı vermiyor fakat uzantısına bakarak dosya kontrolü yapabilirsin. Yüklenen dosyanın sağdan 4 karakterine bakarsın. .jpg .gif .png vs sınamasını yaparsın eğer problem yoksa devam etsin varsa silersin dosyayı. Silme kodunu da vereyim. Silme işlemini de FSO ile halledebilirsin. FSO için ayrıca eklenti kurmana gerek yok sunucuya.

    yuklenenresim=File.ExtractFileName
    yuklenenresim=LCase(yuklenenresim)
    
    'silme işlemi
    Set Sil =CreateObject("Scripting.FileSystemObject")
    Sil.DeleteFile ("D:\websites\domain.com\httpdocs\klasoradi\"&yuklenenresim&"")
    Set Sil=Nothing
    Kullandığım ASP Upload ve ASPJpeg fonksiyonları için bir yazı hazırlayabilirim, biraz beklersen faydalanabilirsin.
  • 10-04-2009, 03:05:40
    #39
    asp upload ile dosya kontrolünü de rahatça yapılabilir, silme işlemi de basittir, bileşene göre yazdım kodları ve mantığını anlatmaya çalıştım, dibine de çaktığım gibi kodların çalıştığını bile denemedim, maksat mantığını vermekti, bu kadar kabaca bi şekilde güvenlik olmadan da kod yazılmaz zati, di mi yani...
  • 10-04-2009, 03:22:46
    #40
    anka81 adlı üyeden alıntı: mesajı görüntüle
    asp upload ile dosya kontrolünü de rahatça yapılabilir, silme işlemi de basittir, bileşene göre yazdım kodları ve mantığını anlatmaya çalıştım, dibine de çaktığım gibi kodların çalıştığını bile denemedim, maksat mantığını vermekti, bu kadar kabaca bi şekilde güvenlik olmadan da kod yazılmaz zati, di mi yani...
    Şaşırdım yau Konuya okurken adamın her sorusuna hemen hemen cevap verilmiş ne güzel diyordum kendi kendime. Şu yazını görünce şaşırdım.

    İyi de yazıma niye o kadar gocundun, kompleks yaptın, anlayamadım. Senin yazdığına ek olarak yazdım ben. Yukarıdaki kodları denerse güvenlik problemi olur diye. Belli ki pek bilgisi yok arkadaşın. Yoksa durup durup soru sormazdı. Gece gece gereksiz yere germişsin kendini, burda herkes birbirinin eksiğini tamamlayabilir. İlla da gocunacaksan ya adam gibi yaz ya da hiç yazma madem. Senden sonra yazacak olanlar şu gereksiz çıkışına muhatap olmasın.

    Silme işlemi de basittir demişsin yukarıda "persist upload ile silme çok çok zordur." bir başkası mıydı? Yoksa espiri mi yaptın?

    ASP Upload ile yaptığın MIME Type kontrolünü paylaşır mısın? Nasıl yapılıyormuş biz de öğrenelim.
  • 10-04-2009, 20:33:39
    #41
    Üyeliği durduruldu
    arkadaşlar yazdığınız mesajları dün gece okudum şimdi göremedim ama sonuçda burası bi tartışma platformu ama bu tartışmaya hakaretler girmemeli. çünkü sırf bu başlıkda 2-3 sorun çözüldü ve bence çok okunacak ve yararlanıcak bir bölüm oldu. Ben kendi adıma persiste resim uploadında ve bazı konularda zayıflığımı sorarak öğreniyorum. benim gibi kaç kişi var sonuçda biri bişey söylediği diğer yanlış anladı vs. zaten silinmiş yada ben göremedim iyide olmuş. ben sizdende aldığım bilgiler ile bir kod yaptım. ama kod şöyle çoklu resim upload. gayette güzel oldu. ama ben burda uzantı yasaklamak istiyorum ama bi türlüde beceremedim örneklerdeki gibi yaptım ama yok beceremedim şimdi sayfalar şöyle. göndereme sayfası bu
    Alıntı
    <FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="kaydet.asp">
    <table border="0" align="center">
    <tr>
    <td width="343"><div align="center">
    <INPUT NAME="Dosya" TYPE="FILE" id="1" SIZE="40" >
    <INPUT NAME="Dosya" TYPE="FILE" id="1" SIZE="40" >
    </div></td>
    </tr>
    <tr>
    <td align="center"><INPUT TYPE=SUBMIT VALUE="Upload!"> </td>
    </tr>
    </table>
    </FORM>
    Kaydetme sayfası ise
    Alıntı
    Set Upload = Server.CreateObject("Persits.Upload")
    Upload.OverwriteFiles = False
    Path = Server.MapPath(".")
    Count=UpLoad.SaveVirtual("images")

    For i=1 to Count
    DosyaAdi=UpLoad.files("Dosya").filename
    Set File = Upload.Files(i)
    Set jpeg = Server.CreateObject("Persits.Jpeg")
    jpeg.Open( File.Path )
    jpeg.Width = 200
    jpeg.Height =jpeg.OriginalHeight * Jpeg.Width / jpeg.OriginalWidth
    Jpeg.Sharpen 1, 150
    jpeg.Save Path & "\images\" &File.ExtractFileName
    jpeg.Width = 90
    jpeg.Height =jpeg.OriginalHeight * Jpeg.Width / jpeg.OriginalWidth
    Jpeg.Sharpen 1, 150
    jpeg.Save Path & "\images\s_" &File.ExtractFileName
    next

    Response.Write("tamam")
    kaydetme sayfasıda bu olcak burda gelen resimler sorunsuz ekleniyor ama uzantı kontrolunu bi türlü yaptıramadım. bu son 3 harfi alıyorum sınatıyorum ama diğelim txt doyasını genede atıyor hanca küçük hallerini çıkarırken kurala uyup yüklemiyor ama yasak uzantılı dosyayı yüklüyor genede nasıl yapabilirm.
  • 11-04-2009, 16:42:48
    #42
    resim=File.ExtractFileName
    resim=LCase(resim)
    if right(resim,4)<>".jpg" or right(resim,4)<>".gif" then 'kendine göre ayarla
    Set Sil =CreateObject("Scripting.FileSystemObject")
    Sil.DeleteFile (Path&resim) 'Path değişkeni yukarıda resmin yüklendiği yer olarak tanımlandı
    Set Sil=nothing
    response.write "hatalı işlem"
    else
    'kontrolden geçtikten sonra yaptırılacak işlemler
    end if
    Persist MIME Type kontrolünü yapamıyor. En azından bu şekilde güvenlik krizini aşabilirsin. İşlemleri onaya tabi tutarsan pek sıkıntı yaşamazsın. kodları for döngüsünün içinde denemen gerekecektir çoklu yükleme yaptırıyorsan. Kolay gelsin.