FSO ile resim upload
FSO ile resim upload
daha once persits ile resim upload işlemini yapıyordum fakat yeni hostumuzda componentler yuklu degil bende component olmadan nasıl yukelyebilirim konusunda internette arastırdım ve FSO yu buldum...
resim upload etmek için asagıdaki kodu kullanıyorumm fakat FSO nesnesini crate ettiğim satırda
Hata Tipi:
Server nesnesi, ASP 0177 (0x800401F3)
Geçersiz sınıf dizesi
/www/Upload2.asp, line 9
hatası veriyor
<%
Set Yukle = New DosyaYukleme
Yol = Server.Mappath("resim")&"\"
DosyaIsmi = Yukle.FileName (" dosya ")
Set FSO = Server.CreateObject("Scripting.FileSystemObject>" )
Set YeniDosya = FSO.CreateTextFile(Yol & DosyaIsmi)
For i = 1 To LenB(Yukle.Value("dosya" ))
YeniDosya.Write Chr(AscB(MidB(Yukle.Value("dosya" ), i, 1)))
Next
YeniDosya.Close
Set YeniDosya = Nothing
Set FSO = Nothing
Set Yukle = Nothing
%>
hata konusunda hiçbir sey anlamadım yardımcı olursanız sevinirim yada baska nasıl upload işlemi yapablirim ama component yuklemeden tesekkurler...
resim upload etmek için asagıdaki kodu kullanıyorumm fakat FSO nesnesini crate ettiğim satırda
Hata Tipi:
Server nesnesi, ASP 0177 (0x800401F3)
Geçersiz sınıf dizesi
/www/Upload2.asp, line 9
hatası veriyor
<%
Set Yukle = New DosyaYukleme
Yol = Server.Mappath("resim")&"\"
DosyaIsmi = Yukle.FileName (" dosya ")
Set FSO = Server.CreateObject("Scripting.FileSystemObject>" )
Set YeniDosya = FSO.CreateTextFile(Yol & DosyaIsmi)
For i = 1 To LenB(Yukle.Value("dosya" ))
YeniDosya.Write Chr(AscB(MidB(Yukle.Value("dosya" ), i, 1)))
Next
YeniDosya.Close
Set YeniDosya = Nothing
Set FSO = Nothing
Set Yukle = Nothing
%>
hata konusunda hiçbir sey anlamadım yardımcı olursanız sevinirim yada baska nasıl upload işlemi yapablirim ama component yuklemeden tesekkurler...
Ölümden öteye köy yok!
- pentiumkivanc
- Üye
- Mesajlar: 350
- Kayıt: 19 Şub 2004 10:24
- İletişim:
Re: FSO ile resim upload
Hata konusunda bence bu kısma dikkat etmelisin hatta özellikle Yol=server.mappath..barol yazdı: Yol = Server.Mappath("resim")&""
DosyaIsmi = Yukle.FileName (" dosya ")
%>
Bunu şöyle yapmayı dene yol=server.mappath("resim/"+dosyaismi)
aradaki bağlacın + olması şart değil biliyorsun, & de yapabilirsin.
Kolay gelsin
- pentiumkivanc
- Üye
- Mesajlar: 350
- Kayıt: 19 Şub 2004 10:24
- İletişim:
Klasör yapısı oluşturulurken / \ işaretlerinde hata yapmamak için ben FSO nun buildpath komutunu kullanıyorum
bu şekilde yapınca değer (local de) c:\inetpub\wwwroot\resim oluyor. Klasör adı oluştururken dikkat etmeli
birde Server.CreateObject("Scripting.FileSystemObject>" ) kısmında sonraki > işaretini buraya mı yanlış kopyaladın yoksa scriptinde de mi böyle? Eğer öyleyse Bu işareti kaldır
Kod: Tümünü seç
dizin="resim"
dizin=fso.BuildPath(Server.Mappath("\"),dizin)
birde Server.CreateObject("Scripting.FileSystemObject>" ) kısmında sonraki > işaretini buraya mı yanlış kopyaladın yoksa scriptinde de mi böyle? Eğer öyleyse Bu işareti kaldır
evet ">" su isareti yanlışlıkla koymusum suan hata vermiyor ama hiçbirsey de olmuyor yukle diyorumm sayfa olece kalıyor yani ilerlemiyor ama hatada vermiyor
daha kompleks kodlar buldum fakat onları anlamıyorumm bu yuzden bu kodu kullanayım dedim ama olmuyor ..FSO ile guzel ornekler bulabilecegim bir yer varmıı
benim tam olarak yapmak istediğim sey haber eklemek tabi haber metni ile resimde yollamam lazım database resmin adını ve haber metnini kaydedecegimm... ilgin için cok tesekkurler..
daha kompleks kodlar buldum fakat onları anlamıyorumm bu yuzden bu kodu kullanayım dedim ama olmuyor ..FSO ile guzel ornekler bulabilecegim bir yer varmıı
benim tam olarak yapmak istediğim sey haber eklemek tabi haber metni ile resimde yollamam lazım database resmin adını ve haber metnini kaydedecegimm... ilgin için cok tesekkurler..
En son barol tarafından 19 Nis 2005 01:47 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Ölümden öteye köy yok!
- pentiumkivanc
- Üye
- Mesajlar: 350
- Kayıt: 19 Şub 2004 10:24
- İletişim:
ben aşağıdaki kod ile upload işlemini halledebiliyorum
yerel sunucuda sorunsuz default ayarlarla çalışıyor fakat 1asphost gibi free bir serverda izinler kapalı olduğundan çalışmıyor. Sanırım brinkster de çalışmıyordu.
Saygılar
Kod: Tümünü seç
sub dosyayuklekaydet
'FSO ile Upload
GelenDosya = Request.Form("dosya" ) ' Formdan gelen dosyayı aldık.
nereye = Server.MapPath("upload" ) 'Aldığımız dosyayı upload edeceğimiz Upload adını verdiğimiz klasörümüzün serverdaki yolunu öğreniyoruz. Burda Upload klasörü ana dizinimizin içinde.Üst dizinde olsaydı ../Upload alt dizinde olsaydı aldizin/Upload diyecektik.
Set DosNes = Server.CreateObject("Scripting.FileSystemObject" )
Set AlinanDosya = DosNes.GetFile(GelenDosya)
AlinanDosya.Copy nereye&"/" ,true
Response.Write "Gönderdiğiniz dosyayı aldık Teşekkür ederiz."
end sub
Saygılar
<%
Dim oFO, oProps, oFile, i, item, oMyName
Set oFO = New FileUpload
Response.Write("<H3>DOSYA YÜKLEME</H3>")
Set oProps = oFO.GetUploadSettings
with oProps
.Extensions = Array("doc", "xls", "jpg") ' İzin verilen dosya türleri tanımı...
.UploadDirectory = Server.Mappath("upload/") ' Varsayılan dosya yükleme klasörü...
.AllowOverWrite = true ' Var olan dosyanın üzerine yazma izni...
.MaximumFileSize = 500000 ' Yüklenecek dosyanın max. boyutu...
.MininumFileSize = 1 ' Yüklenecek dosyanın min. boyutu...
.UploadDisabled = false ' Upload etkin
End with
set oProps = nothing
oFO.ProcessUpload
if oFO.TotalFormCount > 0 then
if oFO.FileCount > 0 then
for i = 1 to oFO.FileCount
set oFile = oFO.File(i)
if oFile.ErrorMessage <> "" then
response.write "> HATA: " & _
oFile.ErrorMessage & "<BR>"
else
oFile.SaveAsFile
if oFile.UploadSuccessful then
response.write "> Başarıyla Yüklendi<BR>"
response.write(" - Dosyanın şu an bulunduğu URL:<font color=""red""> " & _
oFile.URLPath & "</font><BR>")
response.write(" - Dosya tipi: " & oFile.ContentType & "<BR>")
response.write(" - Dosya ismi: " & oFile.FileName & "<BR>")
response.write(" - Dosya boyutu: " & _
formatnumber(oFile.ByteCount, 0) & " byte<BR>")
else
response.write "> Dosyayı yüklerken hata oluştu: " & _
oFile.ErrorMessage & "<BR>"
end if
end if
set oFile = Nothing
next
else
response.write "> Daha önceden bu dosya ile aynı boyutta dosya yüklenmiş. Bu durumda aynı dosyayı yüklüyor olabilirsiniz. Eğer farklı bir dosya olduğuna eminseniz; Dosya boyutunu büyültmek için küçük bir text dosyasını doldurarak sıkıştırılmış dosyaya ekleyiniz."
end if
if oFO.FormCount > 0 then
if isarray(oFO.Inputs) then
response.write " - Gönderen : " & oFO.Form("T1") & "<BR>"
response.write " - habermetni : " & oFO.Form("S1") & "<BR>"
end if
end if
else
oFO.ShowUploadForm request.servervariables("SCRIPT_NAME")
end if
set oFO = Nothing
%>
resimleri upload etmek için boyle bir kod buldum gayet duzgun calışıyor fakat benim resimlerini isimlerini database kaydetmem gerekiyor ama resmin ismini alıp bir degişkene atmayı beceremedim eger anlayan biri varsa lutfen yardımcı olsun tesekkurler....
Dim oFO, oProps, oFile, i, item, oMyName
Set oFO = New FileUpload
Response.Write("<H3>DOSYA YÜKLEME</H3>")
Set oProps = oFO.GetUploadSettings
with oProps
.Extensions = Array("doc", "xls", "jpg") ' İzin verilen dosya türleri tanımı...
.UploadDirectory = Server.Mappath("upload/") ' Varsayılan dosya yükleme klasörü...
.AllowOverWrite = true ' Var olan dosyanın üzerine yazma izni...
.MaximumFileSize = 500000 ' Yüklenecek dosyanın max. boyutu...
.MininumFileSize = 1 ' Yüklenecek dosyanın min. boyutu...
.UploadDisabled = false ' Upload etkin
End with
set oProps = nothing
oFO.ProcessUpload
if oFO.TotalFormCount > 0 then
if oFO.FileCount > 0 then
for i = 1 to oFO.FileCount
set oFile = oFO.File(i)
if oFile.ErrorMessage <> "" then
response.write "> HATA: " & _
oFile.ErrorMessage & "<BR>"
else
oFile.SaveAsFile
if oFile.UploadSuccessful then
response.write "> Başarıyla Yüklendi<BR>"
response.write(" - Dosyanın şu an bulunduğu URL:<font color=""red""> " & _
oFile.URLPath & "</font><BR>")
response.write(" - Dosya tipi: " & oFile.ContentType & "<BR>")
response.write(" - Dosya ismi: " & oFile.FileName & "<BR>")
response.write(" - Dosya boyutu: " & _
formatnumber(oFile.ByteCount, 0) & " byte<BR>")
else
response.write "> Dosyayı yüklerken hata oluştu: " & _
oFile.ErrorMessage & "<BR>"
end if
end if
set oFile = Nothing
next
else
response.write "> Daha önceden bu dosya ile aynı boyutta dosya yüklenmiş. Bu durumda aynı dosyayı yüklüyor olabilirsiniz. Eğer farklı bir dosya olduğuna eminseniz; Dosya boyutunu büyültmek için küçük bir text dosyasını doldurarak sıkıştırılmış dosyaya ekleyiniz."
end if
if oFO.FormCount > 0 then
if isarray(oFO.Inputs) then
response.write " - Gönderen : " & oFO.Form("T1") & "<BR>"
response.write " - habermetni : " & oFO.Form("S1") & "<BR>"
end if
end if
else
oFO.ShowUploadForm request.servervariables("SCRIPT_NAME")
end if
set oFO = Nothing
%>
resimleri upload etmek için boyle bir kod buldum gayet duzgun calışıyor fakat benim resimlerini isimlerini database kaydetmem gerekiyor ama resmin ismini alıp bir degişkene atmayı beceremedim eger anlayan biri varsa lutfen yardımcı olsun tesekkurler....
Ölümden öteye köy yok!
- pentiumkivanc
- Üye
- Mesajlar: 350
- Kayıt: 19 Şub 2004 10:24
- İletişim: