Avatar billede krc_ Nybegynder
24. november 2003 - 20:05 Der er 11 kommentarer og
1 løsning

If - sætning

Hej !

Jeg har følgende side...hvor meningen er at den skal skrive 2 felter ud fra databasen efter hinanden med ; som adskillelse. Men jeg kan fandme ikke få drejet det rigtigt i hovedet. Felterne hedder emailprivat og emailadresse OG hvis feltet er tomt skal det ikke skrives ud. Altså felterne skal kun skrives ud hvis der står noget i dem!

<!-- #include file="db.inc" -->
<%
sql = "SELECT count(id_no) as antal FROM TestTabel"
set rscount = dbc.Execute(sql)

antal = rscount("antal")
set rscount = nothing

'Vælger at læse alle felter fra databasen og sorterer efter dato.
sql = "SELECT * FROM TestTabel"
set rs = dbc.Execute(sql)
%>

<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<link rel="stylesheet" type="text/css" href="fiskestil.css">
</head>

<body bgcolor="#d7dadf">


<%
if rs.eof then
  response.write "<FONT size=1 face=verdana><p align='center'><b>ingen emails</b></p></font>"
else
'Løkke der sørger for at vi læser hele databasen til ende.
Do While Not rs.EOF
%>

<div align="center">
  <center>
  <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" width="100%" bordercolor="#111111" id="table1">
    <tr>
    <td width="100%" align="center">
      <%
        strEmailprivat    =Request.Form("Emailprivat")
        strEmailarbejde    =Request.Form("Emailarbejde")
       
        if strEmailprivat <>"" then
        Response.Write("<FONT size=""1"" face=""verdana"" align=""left"">" & ";" & rs("emailprivat") & ";" & "</FONT>")
        end if
       
'        if strEmailadresse <>"" then
'        Response.Write("<FONT size=""1"" face=""verdana"" align=""left"">" & ";" & rs("emailarbejde") & ";" & "</FONT>")
'        end if
%>       

    </td>
    </tr>
  </table>
</center>
</div>
<%     
      rs.MoveNext
      Loop
      rs.Close
      dbc.close
      end if
%>


<br>

<div align="center">
<center>
  <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="650" id="AutoNumber2">
  <tr>
    <td width="100%" align="center">
    <a href="#" onclick="window.close()">
      <font face="verdana" size="1">
      Luk vinduet
      </font>
    </a>
    </td>
  </tr>
  </table>
  </center>
</div>

</body>
</html>

Jeg ved godt at det der står ikke kan bruges .. men jeg er løbet helt kold.... Hjælp
Avatar billede Slettet bruger
24. november 2003 - 20:08 #1
Prøv:
if not IsNull(rs("emailprivat") then
  if IsNull(rs("emailprivat") <>"" then
        Response.Write("<FONT size=""1"" face=""verdana"" align=""left"">" & ";" & rs("emailprivat") & ";" & "</FONT>")
        end if
end If
Og det samme for emailarbejde
Avatar billede krc_ Nybegynder
24. november 2003 - 21:15 #2
Det giver dette resultat :

;beggeprivat@;;beggearbejde@; 

;;;kunarbejde@; 

;kunprivat@;;; 

;;;;
Avatar billede krc_ Nybegynder
24. november 2003 - 21:15 #3
stadig mellemrum....ved de blanke emailsfelter
Avatar billede Slettet bruger
24. november 2003 - 21:20 #4
if not IsNull(rs("emailprivat") then
if rs("emailprivat") <>"" then
        Response.Write("<FONT size=""1"" face=""verdana"" align=""left"">" & rs("emailprivat") & ";" & "</FONT>")
    end if
end if
       
if not IsNull(rs("emailarbejde") then
  if rs("emailarbejde")  <>"" then
    Response.Write("<FONT size=""1"" face=""verdana"" align=""left"">" & rs("emailarbejde") & ";" & "</FONT>")
  end if
end if
Avatar billede Slettet bruger
24. november 2003 - 21:21 #5
Du har disse to
strEmailprivat    =Request.Form("Emailprivat")
strEmailarbejde    =Request.Form("Emailarbejde")

De læser noget fra formen og ikke noget fra databasen, hvad bruger du dem til?
Avatar billede krc_ Nybegynder
24. november 2003 - 21:34 #6
ikke noget....mere....det var et forsøg..
Avatar billede krc_ Nybegynder
24. november 2003 - 21:36 #7
Det så sgu mere rigtigt ud :
beggeprivat@;beggearbejde@; 

kunarbejde@; 

kunprivat@;

Men hvorfor er der mellemrum mellem linierne ? Hvorfor kommer de ikke bare derudaf ?
Avatar billede Slettet bruger
24. november 2003 - 21:50 #8
Det beder du jo om når du laver en <tr>
Avatar billede krc_ Nybegynder
25. november 2003 - 08:43 #9
Ja ... selvfølgelig....
Det virker nu så tak for det. Du skal nok få point, men kan du ikke lige fortælle mig hvad forskellen er på
if not IsNull(rs("emailarbejde")  og if rs("emailarbejde")  <>"" then

Jeg troede de begge tjekker for om der er indskrevet noget i feltet!
Avatar billede Slettet bruger
25. november 2003 - 20:32 #10
Hvis det er en række du har lavet i databasen men der er felter du endnu ikke har skrevet i så er de NULL og ikke "" i databasen, og når du checker på det så skal du også checke på begge for at være sikker, medmindre du selv når du laver rækken i databasen ved at der så står "" eller 0 for den sags skyld.
Avatar billede krc_ Nybegynder
27. november 2003 - 14:25 #11
Perfekt...tak for hjælpen bertie!
Avatar billede Slettet bruger
27. november 2003 - 22:15 #12
Velbekom og tak for point.
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