يكي نيست اينمشكل uploadحل كنه

xnux

Member
آخه داداش من
با چه زبوني ميخاي؟
ميخواي برات چيكار كنه؟

ولي چون ميخامت ، يه راهنمايي بهت ميكنم
ميدونم زياد نيست ولي كلي باهاش حال ميكني

برو توي سايت www.hotscripts.com
بعد توي هر بخش ( زبانهاي برنامه نويسيش ) كه بري ميتوني توي بخش
file manager يا file Uplod اون چيزي را كه بخواي بدست بياري

مثلا من با زبان asp و PHP را بهت آدرس ميدم

http://www.hotscripts.com/ASP/Scripts_and_Components/File_Manipulation/Upload_Systems/

و

http://www.hotscripts.com/PHP/Scripts_and_Programs/File_Manipulation/Upload_Systems/

ديگه چي ميخواي داداش
:wink:

mortezarmz گفت:
اگه ميشه سورس كد uploadكردن رو بنويسيد
 

hoom

Active Member
سلام

اين برنامه رو با اسم Loader.asp ضبط كنين.


<%
Class Loader
Private dict

Private Sub Class_Initialize
Set dict = Server.CreateObject("Scripting.Dictionary")
End Sub

Private Sub Class_Terminate
If IsObject(intDict) Then
intDict.RemoveAll
Set intDict = Nothing
End If
If IsObject(dict) Then
dict.RemoveAll
Set dict = Nothing
End If
End Sub

Public Property Get Count
Count = dict.Count
End Property

Public Sub Initialize
If Request.TotalBytes > 0 Then
Dim binData
binData = Request.BinaryRead(Request.TotalBytes)
getData binData
End If
End Sub

Public Function getFileData(name)
If dict.Exists(name) Then
getFileData = dict(name).Item("Value")
Else
getFileData = ""
End If
End Function

Public Function getValue(name)
Dim gv
If dict.Exists(name) Then
gv = CStr(dict(name).Item("Value"))

gv = Left(gv,Len(gv)-2)
getValue = gv
Else
getValue = ""
End If
End Function

Public Function saveToFile(name, path)
If dict.Exists(name) Then
Dim temp
temp = dict(name).Item("Value")
Dim fso
Set fso = Server.CreateObject("Scripting.FileSystemObject")
Dim file
Set file = fso.CreateTextFile(path)
For tPoint = 1 to LenB(temp)
file.Write Chr(AscB(MidB(temp,tPoint,1)))
Next
file.Close
saveToFile = True
Else
saveToFile = False
End If
End Function

Public Function getFileName(name)
If dict.Exists(name) Then
Dim temp, tempPos
temp = dict(name).Item("FileName")
tempPos = 1 + InStrRev(temp, "\")
getFileName = Mid(temp, tempPos)
Else
getFileName = ""
End If
End Function

Public Function getFilePath(name)
If dict.Exists(name) Then
Dim temp, tempPos
temp = dict(name).Item("FileName")
tempPos = InStrRev(temp, "\")
getFilePath = Mid(temp, 1, tempPos)
Else
getFilePath = ""
End If
End Function

Public Function getFilePathComplete(name)
If dict.Exists(name) Then
getFilePathComplete = dict(name).Item("FileName")
Else
getFilePathComplete = ""
End If
End Function

Public Function getFileSize(name)
If dict.Exists(name) Then
getFileSize = LenB(dict(name).Item("Value"))
Else
getFileSize = 0
End If
End Function

Public Function getFileSizeTranslated(name)
If dict.Exists(name) Then
temp = 1 + LenB(dict(name).Item("Value"))
If Len(temp) <= 3 Then
getFileSizeTranslated = temp & " bytes"
ElseIf Len(temp) > 6 Then
temp = FormatNumber(((temp / 1024) / 1024), 2)
getFileSizeTranslated = temp & " megabytes"
Else
temp = FormatNumber((temp / 1024), 2)
getFileSizeTranslated = temp & " kilobytes"
End If
Else
getFileSizeTranslated = ""
End If
End Function

Public Function getContentType(name)
If dict.Exists(name) Then
getContentType = dict(name).Item("ContentType")
Else
getContentType = ""
End If
End Function

Private Sub getData(rawData)
Dim separator
separator = MidB(rawData, 1, InstrB(1, rawData, ChrB(13)) - 1)

Dim lenSeparator
lenSeparator = LenB(separator)

Dim currentPos
currentPos = 1
Dim inStrByte
inStrByte = 1
Dim value, mValue
Dim tempValue
tempValue = ""

While inStrByte > 0
inStrByte = InStrB(currentPos, rawData, separator)
mValue = inStrByte - currentPos

If mValue > 1 Then
value = MidB(rawData, currentPos, mValue)

Dim begPos, endPos, midValue, nValue
Dim intDict
Set intDict = Server.CreateObject("Scripting.Dictionary")

begPos = 1 + InStrB(1, value, ChrB(34))
endPos = InStrB(begPos + 1, value, ChrB(34))
nValue = endPos

Dim nameN
nameN = MidB(value, begPos, endPos - begPos)

Dim nameValue, isValid
isValid = True

If InStrB(1, value, stringToByte("Content-Type")) > 1 Then

begPos = 1 + InStrB(endPos + 1, value, ChrB(34))
endPos = InStrB(begPos + 1, value, ChrB(34))

If endPos = 0 Then
endPos = begPos + 1
isValid = False
End If

midValue = MidB(value, begPos, endPos - begPos)
intDict.Add "FileName", trim(byteToString(midValue))

begPos = 14 + InStrB(endPos + 1, value, stringToByte("Content-Type:"))
endPos = InStrB(begPos, value, ChrB(13))

midValue = MidB(value, begPos, endPos - begPos)
intDict.Add "ContentType", trim(byteToString(midValue))

begPos = endPos + 4
endPos = LenB(value)

nameValue = MidB(value, begPos, endPos - begPos)
Else
nameValue = trim(byteToString(MidB(value, nValue + 5)))
End If

If isValid = true Then
intDict.Add "Value", nameValue
intDict.Add "Name", nameN

dict.Add byteToString(nameN), intDict
End If
End If

currentPos = lenSeparator + inStrByte
Wend
End Sub

End Class

Private Function stringToByte(toConv)
Dim tempChar
For i = 1 to Len(toConv)
tempChar = Mid(toConv, i, 1)
stringToByte = stringToByte & chrB(AscB(tempChar))
Next
End Function

Private Function byteToString(toConv)
For i = 1 to LenB(toConv)
byteToString = byteToString & chr(AscB(MidB(toConv,i,1)))
Next
End Function
%>


اين هم يه نمونه برنامه براي امتحانش


<form METHOD="POST" ENCTYPE="multipart/form-data" action="" name="form1" id="form1">
<table border="1" width="100%" bordercolor="#000000" bordercolorlight="#000000" bordercolordark="#000000" cellspacing="0" cellpadding="15" name="table1" id="table1">
<tr>
<td width="100%">
<table border="0" width="100%" cellpadding="0">
<tr>
&lt;td width="100%" Class="gText">&lt;%=GetInternationalString(conPictureSourceText)%>: <input type="file" accept="picture" name="file" size="20" Class="gInput">&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td width="100%" Class="gText">&lt;%=GetInternationalString(conAlternateText)%>: <input type="text" name="T2" size="37" Class="gInput">&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td width="100%" Class="gText">&lt;%=GetInternationalString(conAlignmentText)%>: &lt;select size="1" name="D1" Class="gInput">
&lt;option value="">&lt;%=GetInternationalString(conNotsetText)%>&lt;/option>
&lt;option value="Left">&lt;%=GetInternationalString(conLeftText)%>&lt;/option>
&lt;option value="Right">&lt;%=GetInternationalString(conRightText)%>&lt;/option>
&lt;option value="Texttop">&lt;%=GetInternationalString(conTexttopText)%>&lt;/option>
&lt;option value="Absmiddle">&lt;%=GetInternationalString(conAbsmiddleText)%>&lt;/option>
&lt;option value="Baseline" selected>&lt;%=GetInternationalString(conBaselineText)%>&lt;/option>
&lt;option value="Absbuttom">&lt;%=GetInternationalString(conAbsbuttomText)%>&lt;/option>
&lt;option value="Buttom">&lt;%=GetInternationalString(conButtomText)%>&lt;/option>
&lt;option value="Middle">&lt;%=GetInternationalString(conMiddleText)%>&lt;/option>
&lt;option value="Top">&lt;%=GetInternationalString(conTopText)%>&lt;/option>
&amp;nbsp;
&lt;/select>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td width="100%" Class="gText">&lt;%=GetInternationalString(conHorizontalText)%>:<input maxlength=3 type="text" name="T3" size="5" Class="gInput">&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td width="100%" Class="gText">&lt;%=GetInternationalString(conVerticalText)%>:<input maxlength=3 type="text" name="T4" size="5" Class="gInput">&lt;/td>
&lt;/tr>
&lt;/table>
&lt;/td>
&lt;/tr>
&lt;/table>


&lt;table border="0" width="100%" cellpadding="0" cellspacing="0" name="tButtonSection" id="tButtonSection">
&lt;tr>
&lt;td align="center">

&lt;input type="button" value="&lt;%=GetInternationalString(conOkButton)%>" name="B1" size=20 class="gInputButton" OnClick="DoClick()">
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;input type="button" class="gInputButton" value="&lt;%=GetInternationalString(conCancelButton)%>" name="B2" OnClick="window.close()">
&lt;/td>
&lt;/tr>
&lt;/table>
&lt;/form>


چون من اينو از يكي از پروژه هام برداشتم ديگه عوضش نكردم. هرجا تابع GetInternationalString ديدين برش دارين يه متن بنويسين.

اميدوارم كه همين حسابي كمك كرده باشه.
 
بالا