Avatar billede mtas Nybegynder
03. november 2001 - 14:03 Der er 10 kommentarer og
3 løsninger

Fejlfinding

Jeg har udviklet et lille ASP script, men i nogen tilfælde kommer den med fejl. Hvordan for man den til at skrive en sin egen fejl besked. I stedet for at ASP scripet selv skriver fejlen.

Flere point ? Flere oplysninger ? Kommenter spm\'et
Avatar billede eagleeye Praktikant
03. november 2001 - 14:10 #1
Flere oplysniner: ja tak..

Et eks på tjek hvis du divder i dit script kan du tjekke på om du dividere med 0 og udskrive en fejl

if tal = 0 then
  response.write \"Fejl - tallet er 0\"
else
  nytal = 10 / tal
end if

Hvis der er strenge du søget i kan du tjekke om en streng er tom inden du søget:
if streng = \"\" then
  response.write \"Fejl - strengen er tom\"
  streng = \" \" \'sætter strengen til noget anden end tom , måske ikke nødvendig.
end if.

inStr (index,\"hejheje\",\"e\") \'typsik fejl her er index = 0 hvilket giver en fejl:
så if index = 0 then  index = 1

Avatar billede mtas Nybegynder
03. november 2001 - 14:13 #2
Jeg tænker på hvis man nu skal indsættte oplysninger til et datafelt i en database og der kun må være tal i datafeltet men personen skriver et bogstav. Så vil scripet skrive en fejl, hvordan bestemmer jeg fejlen og finder fejl nr ?
Avatar billede eagleeye Praktikant
03. november 2001 - 14:21 #3
eksvis med tal kan man tjekke med isNumeric

if isNumeric(tal) = false then
  \' der er ikke indtastet et tal
end if

Hvis du har flere du vil tjekke på kan du lave en errorCode og så skrive en tekst ud hvis der er fejl:

errorCode = 0
if isNumeric(tal) = false then
  \' der er ikke indtastet et tal
  errorCode = 5 \' Kan være alt fra beskrivelse til et tal
end if

if errorCode = 0 then
  \'Gem i database
else
  \'Udskrive fejl besked
  response.write \"Der er fejl i indtastningen fejlkode:\"&errorCode
end if
Avatar billede mtas Nybegynder
03. november 2001 - 14:22 #4
Det gælder jo ikke kun tal fejlfinding, altså alle fejl !
Avatar billede eagleeye Praktikant
03. november 2001 - 14:30 #5
alle fejl komme lidt an på hvordan en database er lavet.
Eks: Hvis du har et felt som godt må være null så skal det ikke tjekkes.

Du er selv nød til at skrive lidt kode som kan sansynliggøre indtastede sternge indeholder noget rigtigt.Eks men email adresse:
hvis man har
if email = \"\" then  \'Email ikke indtastet
med det tjek kan A gå som email. men A er jo ikke en gyldig email adresse.
Udvidet test kan tjekke om længden af email er længere en 6 karakter (som er minium for email, a@a.dk) og at der er @ og . i:

if NOT ((len(email)>6) AND (instr(1,email,\"@\")>0) AND (instr(1,email,\".\")>0)) then \'Fejl i email.
Avatar billede netsrac Praktikant
03. november 2001 - 14:35 #6
Hold nu op da, det er jo det nemmeste du bruger jo bare on error resume next eks:

<%
On error resume next

\'Hov jeg lavde en fejl


If err.number <> 0 Then
  Response.write(\"Der er rod i systemet, beklager!\")
End if
Avatar billede eagleeye Praktikant
03. november 2001 - 14:39 #7
jeps den fanger da fejl som opstår ...
Avatar billede eagleeye Praktikant
03. november 2001 - 14:52 #8
men den skriver jo ikke hvor problemmet er..

og ikke mindst, den sikre ikke valide data.
Avatar billede eagleeye Praktikant
03. november 2001 - 14:53 #9
Megt validering kan dog laves ved at lave database designet god.
Avatar billede netsrac Praktikant
03. november 2001 - 15:01 #10
eagleeye >> Hvor står der noget om database ? Som jeg læser bliver der efterlyst fejlhåndtering og ikke alt mulig snak om database, hvem siger at der overhovedet er nogen database ?
Avatar billede eagleeye Praktikant
03. november 2001 - 15:04 #11
mtas kommentar:: 03/11 2001 14:13:15
Avatar billede mtas Nybegynder
03. november 2001 - 16:40 #12
Beklager jeg
Avatar billede mtas Nybegynder
03. november 2001 - 16:41 #13
har allerede fundet svaret ! ellers tak !
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester