Avatar billede stauer Nybegynder
26. november 2003 - 16:42 Der er 9 kommentarer

Tjek for tomt db felt

Hejsa

Jeg er løbet ind i en lidt mystisk fejl (eller nærmere er det jo nok mine asp kundskaber der er lidt mystiske:)

Jeg har en funktion til at fjerne alt hvad der står efter det sidste punktum (jeg vil gerne fjerne .bmp fra mit udtræk)

Funktionen ser sådan her ud

Function fjernExt(str)
fjernExt = Left(str, InStrRev(str, ".")-1)
End Function

Og mit udtræk sådan her

If rs_img("display = "" Then
Response.Write("Empty")
Else
imgTemp = rs_img("display")
imgName = fjernExt(imgTemp)
Response.Write(imgTemp)
Response.Write("<br>")
'Response.Write ("<a href=""#""><img src=""gfx/imgProfiles/"&imgTemp&".gif"" border=""0""></a>")
End If

Men det er som om at linien If rs_img("display = "" Then ikke virker.. Jeg får ihvertfald den her fejl

Null er brugt ugyldigt: 'InStrRev'

Funktionen virker i noget andet jeg har lavet

Anyone?
Avatar billede eagleeye Praktikant
26. november 2003 - 16:47 #1
Et tom helt har værdien Null og ikke "" så prøv at lave din if sætning om fra

If rs_img("display") = "" then

Til denne som tjekker for om den er Null:

If isNull(rs_img("display")) then
Avatar billede eagleeye Praktikant
26. november 2003 - 16:47 #2
du kan også lave den om til dette så den både tjekke på Null og om den kun indeholder mellemrum:

If Trim("" & rs_img("display")) = "" then
Avatar billede ras2000 Nybegynder
26. november 2003 - 16:49 #3
Og ville det ikke være nemmere at skrive replace(imgTemp, ".bmp", "")?
Avatar billede stauer Nybegynder
26. november 2003 - 16:58 #4
der var en eller anden grund til at jeg ikke bare kunne replace .bmp men eagleeye i din anden kommentar tjekker den også for IsNull der?
Avatar billede eagleeye Praktikant
26. november 2003 - 17:00 #5
Ja det gør den. Man laver Null om til "" ved at at ligge "" til strengen og det det føste som sker:  "" & rs_img("..")
Avatar billede stauer Nybegynder
26. november 2003 - 17:16 #6
Nu får jeg denne fejl.. Hvad betyder dette..
Procedurekaldet eller argumentet er ugyldigt: 'Left'
Avatar billede eagleeye Praktikant
26. november 2003 - 17:18 #7
Det er nok fordi at tallet i Left er mindre 0 eller mindre end 0. Er du sikker på der er . i tekststrengen?
Avatar billede ras2000 Nybegynder
26. november 2003 - 17:19 #8
Det kunne være fordi der ikke er noget "." Prøv med en
If instr(str, ".") then
  fjernExt = Left(str, InStrRev(str, ".")-1)
else
  fjernExt = str
end if
Avatar billede eagleeye Praktikant
26. november 2003 - 17:20 #9
du kan evt udvide din funktion lidt:

Function fjernExt(str)
  index = InStrRev(str, ".")-1
  if index > 0 then
    fjernExt = Left(str, index)
  else
    fjernExt = str
  end if
End Function
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

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