Avatar billede stanz2002 Nybegynder
05. august 2003 - 17:08 Der er 18 kommentarer og
2 løsninger

Tom felt i databasen!

Hej..

Har en access database med fx følgende felter:

id
firmanavn
adresse1
adresse2
postnr
by

Når jeg så i ASP skal have vist dette på en webside er det ikke alle poster, der indeholder noget i feltet 'adresse2'.. Men hvordan får jeg den så til at hoppe dette felt over ved dem hvor der ikke er noget information..

Det jeg får nu er som følgende:

Firma med indhold i 'adresse2':
-------------------------------
B&O
Olufsenvej 34
Postkasse 3
9200 Struer

Firma UDEN indhold i 'adresse2':
-------------------------------
Mærsk
A.P. Allé 7

1255 København


Altså kommer der et tomt hul der hvor der ikke er information i databasen.. hvordan får jeg den til at se bort fra dette og bare ikke indsætte noget hvis der ikke står noget i feltet i den pågældende post i databasen..

Jeg bruger forresten Dreamweaver MX
Avatar billede grunken Nybegynder
05. august 2003 - 17:15 #1
if rs('adresse2') <> ""
response.write rs('adresse2') & "<br>"
end If
Avatar billede eagleeye Praktikant
05. august 2003 - 17:18 #2
Den giver Null i recordset hvis feltet er tomt så prøv:

if isNull(rs("adresse2")) = false then
  Response.write rs("adresse2") & "<br>"
End If
Avatar billede vbcoder Nybegynder
05. august 2003 - 17:20 #3
ovenstående giver fejl da et tomt felt i db er null

istedet foreslår jeg

if trim(rs("adresse2") & " " = "" then
response.write "<br>"
else
response.write rs("adresse2")
end if

//vbcoder
Avatar billede vbcoder Nybegynder
05. august 2003 - 17:21 #4
skulle have været et svar ;o)
Avatar billede stanz2002 Nybegynder
05. august 2003 - 17:26 #5
okay.. prøver lige med det..

men jeg synes bare jeg engang lavede en side, hvor den helt automatisk bare så bort fra et felt hvis der ikke var nogen informationer i det..
Avatar billede eagleeye Praktikant
05. august 2003 - 17:28 #6
Mit forslag giver ikke fejl, så det med "ovenstående giver fejl" passer ikke.


Det er fordi du sikkert har en udskift som denne:

Response.write rs("adresse2") & "<br>"


og ved det første rs("adresse2") bliver der ikke noget udskrevet med <br> bliver statig udskrevet og giver dermed linje skift.
Avatar billede vbcoder Nybegynder
05. august 2003 - 17:35 #7
jeg undskylder på teknikkens vegne da den har postet dit svar mens jeg skrev på svar mens jeg skrev på mit ;0)

//vbcoder
Avatar billede stanz2002 Nybegynder
05. august 2003 - 17:42 #8
kan omskrive det her så det virker.. er ik den store ASP haj :)

desuden gir det her en fejl:

Microsoft VBScript runtime error '800a000d'
Type mismatch: 'rs'
aarhus.asp, line 180
Avatar billede stanz2002 Nybegynder
05. august 2003 - 17:42 #9
ups.. det her :)

<%
adresse_2 = (RecAarhus.Fields.Item("rabat_adresse_2").Value)

if isNull(rs("adresse_2")) = false then
Response.write rs("adresse_2") & "<br>"
End If
%>
Avatar billede eagleeye Praktikant
05. august 2003 - 17:44 #10
Ok sådan her så dit recordset hedder RecAarhus og ikke rs så prøv:

<%
adresse_2 = (RecAarhus.Fields.Item("rabat_adresse_2").Value)

if len("" & adresse_2) > 0 then
  Response.write adresse_2 & "<br>"
End If
%>
Avatar billede stanz2002 Nybegynder
05. august 2003 - 17:45 #11
kan man ik sætte databaseopslaget ind i den kode i har givet mig.. i stedet for at gøre det jeg har prøvet på.. :)
Avatar billede stanz2002 Nybegynder
05. august 2003 - 17:47 #12
# eagleeye.. det virker ik.. der er stadigt et hul..
Avatar billede eagleeye Praktikant
05. august 2003 - 17:49 #13
Hvordan ser koden så ud?
HAr du gemt et mellemrum ' ' eller tomt '' når feltet ikke er udfyldt?
Avatar billede stanz2002 Nybegynder
05. august 2003 - 17:52 #14
har lige prøvet med den her kode, men den virker hellere ik..

<%
if trim(RecAarhus.Fields.Item("rabat_adresse_2").Value) & " " = "" then
response.write "<br>"
else
response.write (RecAarhus.Fields.Item("rabat_adresse_2").Value)
end if
%>
Avatar billede eagleeye Praktikant
05. august 2003 - 17:53 #15
Prøv den føste jeg har vist med rigtigt recordset navn:


if isNull(RecAarhus.Fields.Item("rabat_adresse_2").Value)= false then
  Response.write RecAarhus.Fields.Item("rabat_adresse_2").Value & "<br>"
End If
Avatar billede eagleeye Praktikant
05. august 2003 - 17:55 #16
Hvis du gemmer et mellemrum når det er tomt så prøv sådan her:


if Trim(" " & RecAarhus.Fields.Item("rabat_adresse_2").Value) = "" then
  Response.write RecAarhus.Fields.Item("rabat_adresse_2").Value & "<br>"
End If
Avatar billede stanz2002 Nybegynder
05. august 2003 - 17:57 #17
duer ik.. plsu den laver et hul efter adresse2 der hvor der er noget information i feltet..
Avatar billede stanz2002 Nybegynder
05. august 2003 - 17:57 #18
okay prøver lige din anden mulighed..
Avatar billede stanz2002 Nybegynder
05. august 2003 - 18:00 #19
sådan.. det her virkede alligevel..

<%
if isNull(RecAarhus.Fields.Item("rabat_adresse_2").Value)= false then
  Response.write RecAarhus.Fields.Item("rabat_adresse_2").Value & "<br>"
End If
%>

der var bare et <br> efter koden, som jeg ik lige havde set.. :)
Avatar billede stanz2002 Nybegynder
05. august 2003 - 18:03 #20
takker for hjælpen!
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

IT-JOB

KMD A/S

Projektleder

Erhvervsakademi København

Eksterne lektorer inden for IT-sikkerhed

Forsvarsministeriets Materiel- og Indkøbsstyrelse

Solution Manager til Cyberdivisionen

Netcompany A/S

Network Engineer

Politiets Efterretningstjeneste

IT-løsningsarkitekt i PET