webForumDet fria alternativet

felmeddelandehantering aspSmartImage

ASP

6 svar · 259 visningar · startad av Eclipse

Medlem sedan juli 20003 825 inlägg
Frågan#1

' ## Only allow jpg or jpeg files
mySmartUpload.AllowedFilesList = "jpg,jpeg"
on error resume next

***
Jag gillar inte 'on error resume next' eftersom det effektivt döljer *alla* fel.

Finns det nåt alternativ att överväga?

Alltså, jag vill inte ha ett felmeddelande. Jag vill att *inget* ska hända. Alltså, användaren kommer tillbaka till fylla-i-fältet utan massa meck och smäck om att det är fel fil.

Medlem sedan juni 200032 967 inlägg
#2

Jag ser inget alternativ, inte så här tidigt på morgonen i alla fall. ;-)

Mvh

Medlem sedan nov. 20017 144 inlägg
#3

Jag tycker att du talar emot dig själv.
-"Jag gillar inte 'on error resume next' eftersom det effektivt döljer *alla* fel"
och,
-"Jag vill att *inget* ska hända"

Då är du väl på rätt väg ändå med; on error...

mySmartUpload.AllowedFilesList = "jpg,jpeg"
on error resume next
if err.number > 0 then 
response.redirect "tebax.asp"
end if
Medlem sedan juli 20003 825 inlägg
#4

ok, kanske var jag otydlig. Jag menade att 'on error... ' även tar bort andra fel som kan uppstå.

Vad jag menar med att inget ska hända är att just inget ska hända... Ska man ladda upp en bild såp ska det vara en bild. Är fältet blankt eller man försöker med nåt annat så händer just ingenting...

Det står i manualen att det ska vara jpeg/jpg och om man inte läser manualen så är det helt okej.

Medlem sedan juni 200032 967 inlägg
#5

Ja, on error resume next gör ju så alla fel struntas i. Du måste alltså se till att hantera alla fel själv.

I Err-objektet har du all information du behöver om det inträffar fel.

Mvh

Medlem sedan nov. 20017 144 inlägg
#6

Du kan ju först kolla vilket errornummer som du får med :
ex.
Ladda upp något med en annan filändelse än jpg, jpeg.
Kör kod:

on error resume next
if err.number<>0 then
Response.write err.number
end if

Då har du fått ett errornummer för det felet.
Då tar du det och sätter in det i stället.
principex.

on error resume next
if err.number=323323 then 'Ditt errornummer
Response.redirect "tillbaka.asp"
elseif err.number<>323323 then
Response.write "annat fel!"
end if
Medlem sedan juli 20003 825 inlägg
#7

Förlåt - förlåt - förlåt!!!

Jag postade inlägget, såg din kod och tänkte redigera men då ringde en kund som jag var tvungen att ta mig ann!!

Din kod är superb!

I alla fall i teorin... Det var nåt sånt jag var ute efter!

Sorry, brother!

258 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
117 ms — ändringar (db)