Hur går man vill väga för att kolla ifall en webserver har nån upload komponent installerad?
Jag vill alltså checka ifall webhotellet jag använder har nån installerad.
9 svar · 351 visningar · startad av SteveP
Hur går man vill väga för att kolla ifall en webserver har nån upload komponent installerad?
Jag vill alltså checka ifall webhotellet jag använder har nån installerad.
Det brukar finnas info på webhotellets sidor om vilka komponenter som finns tillgängliga på deras servrar. Annars får man försöka skapa objekt.
On error resume next
set objupload = server.createobject("aspsmartupload.upload")
if err.number = 0 then
' inget fel, komponenten finns!
else
' komponenten finns inte
Err.Clear
end if
Liknande får du göra för alla uploadkomponenter du vill kontrollera.
Mvh,
Det lättaste är att försöka skapa en instans och se om du får ett felmeddelande. :) Till exempel
Server.CreateObject misslyckades. Kontakta leverantören för mer information
Jo jag tittade på sidan men tyvärr står det inte vad dom har för komponenter installerad.
Vilka upload komponenter finns det att välja bland? Om vi nu håller oss till dom vanligaste.
aspsmartupload som du visade, sen finns väl aspupload?
Persits Upload eller något sånt finns det väl oxå.
Hmm dendär koden som @anders skrev kommer ingen vart. Sidan står bara och tuggar, den visar alltså inget meddelande.
Kanske beror på att den inte skapa objektet? Men isf borde väl ett felmeddelande visas?
Tog ja bort "On Error Resume Next" så visade den mycket riktigt att den inte kunde skapa objektet
SteveP skrev:
Hmm dendär koden som @anders skrev kommer ingen vart. Sidan står bara och tuggar, den visar alltså inget meddelande.
Hmm. Tuggar, gör den verkligen det? Men, den koden jag skrev ska inte visa någonting, utan du får själv lägga till det i if - else - blocken.
On error resume next lade jag till i koden just för att kunna kontrollera fler komponenter på samma sida, och fånga felen. Så här tänkte jag mig:
On error resume next
set objupload = server.createobject("aspsmartupload.upload")
if err.number = 0 then
Response.write "ASPSmartUpload finns<br>"
else
Response.write "ASPSmartUpload finns icke (" & Err.Description & ")<br>"
Err.Clear
end if
set objupload = server.createobject("w3.upload")
if err.number = 0 then
Response.write "w3 upload finns<br>"
else
Response.write "w3 upload finns icke (" & Err.Description & ")<br>"
Err.Clear
end if
set objupload = server.createobject("persits.upload")
if err.number = 0 then
Response.write "aspupload finns<br>"
else
Response.write "aspupload finns icke (" & Err.Description & ")<br>"
Err.Clear
end if
Sedan är det bara att lägga till kod för de komponenter du vill kontrollera.
Vilket webhotell använder du?
On error resume next används alltså när man vill undvika att processing av sidan stoppas om något fel genereras. "Om det blir fel, kör vidare ändå". Använder man on error resume next, så är det normalt att man använder Err-objektet för att fånga upp felen också. Man ska inte bara strunta i att det blir fel liksom. :)
Mvh