• 21-01-2009, 12:06:50
    #1
    Herhangi bir bileşen kullanmadan dosya uploadı için koda ihtiyacım var.



    Yukarıdaki gibi bir üyelik sistemi yaptım. Formdaki tüm veriler mdb dosyasına yazılıyor. Şu an 2 alan hariç, bunlardan biri kişinin vesikalık fotoğrafını ekleyeceği alan, diğeri özgeçmişini ekleyeceği alan. Vesikalık resim alanında ekleyeceği resmin örneğin 100x150 pixel olarak kroplanması dışında hiçbir özelliğe ihtiyaç yok. Diğeri de zaten özgeçmiş doc pdf yada xls bir dosya eklenecek. İsteğim dosyaları bir klasöre, dosya yolunu da mdb ye yazsın. Bu konuda yardımcı olursanız çok makbule geçer arkadaşlar. Şimdiden teşekkürler.
  • 22-01-2009, 09:46:25
    #2
    Koskoca R10da yok mu aspden anlayan ve yardım edecek bir arkadaş?
  • 22-01-2009, 09:53:05
    #3
    dosyaları upload ettirdiğin sayfa ile veri tabanına kayıot yaptırdığın sayfa aynımı? eğer aynı ise addnew den sonraya resim alanına o kaydettiğin dosyaların adlarını yazdırırsın
  • 22-01-2009, 10:31:54
    #4
    desingby adlı üyeden alıntı: mesajı görüntüle
    dosyaları upload ettirdiğin sayfa ile veri tabanına kayıot yaptırdığın sayfa aynımı? eğer aynı ise addnew den sonraya resim alanına o kaydettiğin dosyaların adlarını yazdırırsın
    Hayır aynı sayfada değil. Form bilgileri başka bir sayfaya post ediliyor.

    Öğrenmek istediğim özgeçmiş (doc, pdf) ve fotoğraf alanına eklenecek dosyaların (jpg, gif) bir klasöre upload olması, bu yolların da varolan veritabanındaki tablodaki bir alana yazdırılması. (daha sonra resmi çağırabilmek için - silme & değiştirme için)
  • 22-01-2009, 11:51:46
    #5
    konu açmadan önce forumda arama yapın. İstediğiniz kodları zamanında bir arkadaşa forum üzerinden yazmıştım. Araştırırsan bulursun.
  • 22-01-2009, 11:59:38
    #6
    mustad adlı üyeden alıntı: mesajı görüntüle
    Hayır aynı sayfada değil. Form bilgileri başka bir sayfaya post ediliyor.
    Öğrenmek istediğim özgeçmiş (doc, pdf) ve fotoğraf alanına eklenecek dosyaların (jpg, gif) bir klasöre upload olması, bu yolların da varolan veritabanındaki tablodaki bir alana yazdırılması. (daha sonra resmi çağırabilmek için - silme & değiştirme için)
    amazonun dediği gibi forumda asp ile upload yollarını kullanmanın araştırmasını yap gerisini benim sölediğim mantıkda halkledersin sorun olmaz
  • 22-01-2009, 14:48:58
    #7
    Arkadaşlar forumdan şöyle bir kod buldum (AmazonGenTr kullanıcısının postu) Yanlız burada db ye yazma olayını yapmıyor. Varolan bişr db deki tablo alanına bu yolu nasıl yazdırırız ve nasıl çağırırız?

    <%
    Session.TimeOut = 1400
    Response.Expires = -1
    Response.ExpiresAbsolute = Now() - 1
    Response.AddHeader "pragma","no-cache"
    Response.AddHeader "cache-control","private"
    Response.CacheControl = "no-cache"
    %>
    <%
    islem = Request("islem")
    If islem = "Yukle" Then
    call ImageUpload
    End If
    %>
    <html>
    <head>
    <title>Resim Ekle</title>
    <meta content="Microsoft FrontPage 6.0" name="GENERATOR">
    <meta name="ProgId" content="FrontPage.Editor.Document">
    <meta http-equiv="Content-Language" content="tr">
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1254">
    </head>
    <body link="#000000" vlink="#000000" alink="#000000">
    <p align="center"><b>&nbsp; <font face="Verdana" style=font-size:14pt color="#4D6E93">Resim Yükle</font><br>

    <%
    Function SifreUret(Boy)
    Dim Sifre,KarakterBoyu,KacinciKarakter
    Const Karakterler = "ABCDEFGHIJKLMNOPRSTUVYZXW0123456789"
    Randomize
    KarakterBoyu = Len(Karakterler)
    For x = 1 To Boy
    KacinciKarakter = Int((KarakterBoyu * Rnd) + 1)
    sifre = sifre & Mid(Karakterler,KacinciKarakter,1)
    Next
    SifreUret = sifre
    End Function
    Session("KarisikYazi") = SifreUret(7)
    Kac = request.querystring("Kac")
    %>
    </font></b>
    <form Enctype="multipart/form-data" language="javascript" name="imageupload" Action="?islem=Yukle&Kac=<%=Kac%>" Method="Post">
    <p align="center">
    <font face="Verdana" size="2">Resim Adresi</font><font face="Verdana"><font size="2"> : </font>
    <input NAME="File2" SIZE="38" TYPE="file" style="padding:2px; color: #000000; font-family: Verdana; font-size: 10px; font-weight: bold; border: 1px solid #808080; background-color: #C0C0C0"><font size="2"><br>
    <br>
    </font>
    <input type="submit" value="Yükle" name="Submit" style="padding:2px; color: #000000; font-family: Verdana; font-size: 10px; font-weight: bold; border: 1px solid #808080; background-color: #C0C0C0" onMouseOver="this.style.cursor='hand';" onClick="imageupload.Submit.disabled=true; imageupload.Submit.value='Please Wait...'; imageupload.submit()">
    </font></p>
    </form>
    <hr>
    <font face="Verdana" size="2"></p>
    <p align="center">

    <b>
    <a style="text-decoration: none" href="JavaScript:OnClick=%20window.close()">[
    KAPAT ]</a></b></p>
    <%
    Sub ImageUpload
    GercekKlasor = "imgs"
    ImageDir = "imgs"
    ForWriting = 2
    adLongVarChar = 201
    lngNumberUploaded = 0
    'Get binary data from form
    noBytes = Request.TotalBytes
    binData = Request.BinaryRead (noBytes)
    'convery the binary data to a string
    Set RST = CreateObject("ADODB.Recordset")
    LenBinary = LenB(binData)
    if LenBinary > 0 Then
    RST.Fields.Append "myBinary", adLongVarChar, LenBinary
    RST.Open
    RST.AddNew
    RST("myBinary").AppendChunk BinData
    RST.Update
    strDataWhole = RST("myBinary")
    End if
    strBoundry = Request.ServerVariables ("HTTP_CONTENT_TYPE")
    lngBoundryPos = instr(1, strBoundry, "boundary=") + 8
    strBoundry = "--" & right(strBoundry, len(strBoundry) - lngBoundryPos)
    lngCurrentBegin = instr(1, strDataWhole, strBoundry)
    lngCurrentEnd = instr(lngCurrentBegin + 1, strDataWhole, strBoundry) - 1
    Do While lngCurrentEnd > 0
    'Get the data between current boundry and remove it from the whole.
    strData = mid(strDataWhole, lngCurrentBegin, lngCurrentEnd - lngCurrentBegin)
    strDataWhole = replace(strDataWhole, strData,"")
    'Get the full path of the current file.
    lngBeginFileName = instr(1, strdata, "filename=") + 10
    lngEndFileName = instr(lngBeginFileName, strData, chr(34))
    'Make sure they selected a file.
    if lngBeginFileName = lngEndFileName and lngNumberUploaded = 0 Then
    Response.Redirect "ResimEkle.asp?"
    End if
    'There could be an empty file box.
    if lngBeginFileName <> lngEndFileName Then
    strFilename = mid(strData, lngBeginFileName, lngEndFileName - lngBeginFileName)
    tmpLng = instr(1, strFilename, "\")
    Do While tmpLng > 0
    PrevPos = tmpLng
    tmpLng = instr(PrevPos + 1, strFilename,"\")
    Loop
    FileName = right(strFilename, len(strFileName) - PrevPos)
    lngCT = instr(1,strData, "Content-Type:")
    if lngCT > 0 Then
    lngBeginPos = instr(lngCT, strData, chr(13) & chr(10)) + 4
    Else
    lngBeginPos = lngEndFileName
    End if
    lngEndPos = len(strData)
    'Calculate the file size.
    lngDataLenth = lngEndPos - lngBeginPos
    'Get the file data
    strFileData = mid(strData, lngBeginPos, lngDataLenth)
    IF instr(1,FileName,".asp",1) or instr(1,FileName,".mdb",1) or instr(1,FileName,".htm",1) or instr(1,FileName,".txt",1) or instr(1,FileName,".doc",1) or instr(1,FileName,".psd",1) or instr(1,FileName,".exe",1) or instr(1,FileName,".vbs",1) or instr(1,FileName,".dll",1) or instr(1,FileName,".com",1) or instr(1,FileName,".bat",1) or instr(1,FileName,".rar",1) or instr(1,FileName,".zip",1) or instr(1,FileName,".xls",1) or instr(1,FileName,".html",1) or instr(1,FileName,".php",1) or instr(1,FileName,".cgi",1) or instr(1,FileName,".ocx",1) Then
    %>
    <html>
    <title>Image Upload</title>
    <body link="#000000" vlink="#000000" alink="#000000">
    <center>
    <br><br>
    <b>Göndermeye çalıştığınız dosya türü desteklenmiyor.</b><br>
    <font size="2" color="#FFFFFF" face="Verdana"><br><br><br>
    <br>
    <br>
    <br>
    <br><br>
    <font color="#FFFFFF">
    <b><a style="text-decoration: none" href="JavaScript:OnClick=%20window.close()">
    [ KAPAT ]</a></b></font>
    </center>
    <%
    ELSE
    'Create the file.
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set f = fso.OpenTextFile(server.mappath(imagedir) & "/"&Session("KarisikYazi")&"" & FileName, ForWriting, True)
    f.Write strFileData
    Set f = nothing
    Set fso = nothing
    End IF
    lngNumberUploaded = lngNumberUploaded + 1
    End if
    lngCurrentBegin = instr(1, strDataWhole, strBoundry)
    lngCurrentEnd = instr(lngCurrentBegin + 1, strDataWhole, strBoundry) - 1
    loop
    IF instr(1,FileName,".asp",1) or instr(1,FileName,".mdb",1) or instr(1,FileName,".htm",1) or instr(1,FileName,".txt",1) or instr(1,FileName,".doc",1) or instr(1,FileName,".psd",1) or instr(1,FileName,".exe",1) or instr(1,FileName,".vbs",1) or instr(1,FileName,".dll",1) or instr(1,FileName,".com",1) or instr(1,FileName,".bat",1) or instr(1,FileName,".rar",1) or instr(1,FileName,".zip",1) or instr(1,FileName,".xls",1) or instr(1,FileName,".html",1) or instr(1,FileName,".php",1) or instr(1,FileName,".cgi",1) or instr(1,FileName,".ocx",1) Then
    ELSE
    %>
    <%Kac = request.querystring("Kac")%>
    <script language="JavaScript">
    window.opener.document.imageupload.<%=Kac%>.focus( );
    window.opener.document.imageupload.<%=Kac%>.value += '<%=Session("KarisikYazi")%><%=FileName%>';
    window.close();
    </script>
    <%
    End IF
    Response.End
    End Sub
    %> </p>
    </body>
    </html>
  • 22-01-2009, 14:58:50
    #8
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Bilşen kullanmadan FSO ile yapılabilir defaultta o geldiği için ama ben uğraşamadım onla. Bilşenli kullanmak istersen bu işini görür sanırım. Persists kullanıyor.
  • 03-02-2009, 15:09:54
    #9
    Arkadaşlar sorunu hala çözemedim, yaklaşık 1 haftadır uğraşıyorum. Sorun şu aynı sayfada kişinin Ad, Soyad, Telefon, Adres....vb bilgilerinin yanı sıra Vesikalık ve Özgeçmiş bilgilerini de almamdan kaynaklanıyor. Bunu nasıl çözeceğimi bulamadım.

    Ayrıca yukarıda verdiğim kodlarda post işlemi yapılıyor ama kodlar adres çubuğunda görünüyor. Adres çubuğunda olmadan bu kodları çalıştırabilir miyim?