15. januar 2004 - 01:18Der er
15 kommentarer og 1 løsning
billed upload med ASPUpload 2.1 ?
plz er der ikke en der vil hjælpe mig med at lave en billed upload til min hjemmeside, den skal køre over ASPUpload 2.1, og min server har følgende komponenter installeret:
kravende er skal være meget avanceret, den må maximal kunne oploade 300 kb, billedet skal være gif, og så skal den være 460 * 60, hvis ikke den opfylder disse krav, skal den ikke gennemføre, plz kan i ikke hjælpe, bare i det mindste med størelsen, hilsen MentoZ
foresten skal den gamme billderne i en mappe som hedder banner, og mappen skal ligge i roden, og så skal den kalde gif filen for brugerens navn, fra en database... det klare jeg selv....
modtag.asp: (Den der skal tjecke op på informationerne)
<HTML> <BODY> <% Set Upload = Server.CreateObject("Persits.Upload") ' Limit file size to 300000 bytes Upload.SetMaxSize 300000, True
On Error Resume Next
Upload.Save "c:\upload"
' 8 is the number of "File too large" exception If Err.Number = 8 Then Response.Write "Your file is too large. Please try again." Else If Err <> 0 Then Response.Write "An error occurred: " & Err.Description Else Response.Write "Success!" End If End If %>
</BODY> </HTML>
Der har du en simpel upload form, der dog kun tjecker på størrelsen.
Jeg har desværre ikke mere tid lige nu, men hvis ikke du har fået hjælp senere på dagen, så skal jeg nok vise dig det med størrelsen på billederne. Ellers er der vel lige en venlig sjæl der lige kan tilføje det.
modtag.asp filen, så skald er bare tilføjes det med database. Hvis det drille kan du prøve at fjerne linjen:
On Error Resume Next
For at få en bedre fejl kode og linje nr.
<HTML> <BODY> <% Set Upload = Server.CreateObject("Persits.Upload") ' Limit file size to 300000 bytes Upload.SetMaxSize 300000, True
On Error Resume Next
Upload.Save
' 8 is the number of "File too large" exception If Err.Number = 8 Then Response.Write "Your file is too large. Please try again." end if fejl = false for each file in Upload.Files if file.ImageHeight <> Clng(60) OR file.ImageWidth <> Clng(160) or file.ImageType <>"GIF" then Response.Write "Filen har forkert størrelse eller filtype" felj = true next end if
if Err.Number = 0 and fejl=false then for each file in Upload.Files
den første kommer med fejlen "The system cannot find the path specified", og jeg har omdøbt Upload.Save "c:\upload" til "/banner/" og "banner" og bare "banner", men intet virker filerne på min server ser sådan ud:
Scripts -dir ( mappe på serveren ) -database - mdb ( fil i overstående mappe )
htdocs -dir ( mappe på serveren ) - alle asp filer + biller + upload mappen "banner"
ps. jeg vil også meget gerne have det med størelse begrænsning på fil til 460 * 60
og den sidste kommer bare med en fejl, også selvom jeg ahr fjernet linjen On Error Resume Next, min server er ikke særlig god til at komme med fejlmeddelser på asp filer, den skriver bare at siden ikke kunne vises, så jeg plejer at bruger iis i windows til at fejlfinde med, men det kan jeg ikke her, da den ikke har ASPUpload 2.1 , eller nogen anden upload komponent, og jeg nægter at uploade uden komponent...
Du skal have skriverettigheder i den mappe du vil uploade til. Mange steder er det sådan, at du kun kan uploade til db-mappen, da du har skriverettigheder der.
<% Set Upload = Server.CreateObject("Persits.Upload") ' Limit file size to 300000 bytes Upload.SetMaxSize 300000, True
On Error Resume Next
fejl = false Upload.Save "c:\upload"
for each file in Upload.Files if file.ImageHeight <> Clng(60) OR file.ImageWidth <> Clng(460) or file.ImageType <>"GIF" then fejl = true end if next
If Err.Number = 8 Then Response.Write "Your file is too large. Please try again." Else If Err <> 0 OR fejl = true Then if fejl = true then Response.write "Filen er større end den må!"
else Response.Write "Der er opstået en fejl" end if Else Response.Write "Success!" End If End If %>
hmm.. Kan så lige se på mit script, at den jo faktisk gemmer det uanset hvad! :D
Du skal nok lave dette om: Upload.Save "c:\din_sti_her" rettes til: Uplad.Save
og i linjen lige under hvor den skriver "Success!", der skal du så tilføje: for each file in Upload.Files File.SaveAs "c:\din_sti_her" next
Disse ting er jo klippet lige ud af eagleeye´s svar, så kan ikke forstå, hvis hans ikke virker. Kan se han har nogle enkelte tastefejl hvor "fejl" bliver til "felj", men han plejer ikke at lave ting, som ikke virker! :D
jeg har også selv rettet felj til fejl men det virkede heller ikke
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.