Markus: Gültigkeitsprüfung

Hi Leute

Beziehe in einer Tabelle von einer .ASP Seite die Informationen einer Access-Datenbank.

Unter anderem die Felder, die wie folgt aufgebaut sind:

Telefon: | "Tel1"
         | "Tel2"
         | "Tel3"

Nun ist mein Problem das nicht alle anzuzeigenden Datensätze eine "Tel2" od. "Tel3" haben.

Ich möchte nun das die Felder "Tel2" u. "Tel3" nur angezeigt werden wenn sie auch etwas beeinhalten - da sonst die Tabelle unnötig Platz verschwendet, weil sie auch "Null" also nichts aus der DB anzeigt.

Das zweite Problem ist das >br< dabei - hab die Klammern umgedreht.

Habe einen Tipp bekommen es so zu lösen:

<% If (trim(FP_FieldVal(fp_rs,"Tel2")) <> "" ) Then Response.Write "<br>" &  FP_FieldVal(fp_rs,"Tel2") %>

Das funktioniert aber leider nicht weil er das >br< immer macht!

Wer kann mir da weiterhelfen?

Wäre über eine Hilfe sehr dankbar!

MFG

Markus

  1. Hallo,

    wie machst du denn die Ausgabe der Daten?

    Frag doch hier ab mit einer if-abfrage ob das feld leer ist (= "") und setz dann eine neue Zeile oder nicht.

    Das Codeschnippsel sieht doch schon gut aus...

    <% If (trim(rs(3)) <> "" ) Then Response.Write "<br>" &  rs(3)%>

    ich bin hier davon ausgegangen, dass das telefon das 3. feld in deinem suchresultat ist, welches rs heißt...

    Odium

    1. Hi Odium

      Danke für deine Antwort

      wie machst du denn die Ausgabe der Daten?

      Das ist leider eine blöde Sache weil das mit Frontpage über einen Assistenten gemacht wird wo ich praktisch keinen Zugriff habe....

      Frag doch hier ab mit einer if-abfrage ob das feld leer ist (= "") und setz dann eine neue Zeile oder nicht.

      Kann die IF Funktion erst in der Ausgabe einbauen...

      mein Feld heißt dort:

      (FP_FieldVal(fp_rs,"Tel1")) bzw. "Tel2" bzw. "Tel3"

      der erste Teil wird von Frontpage vorgegeben und kann ich daher auch nicht ändern..

      Das Codeschnippsel sieht doch schon gut aus...

      <% If (trim(rs(3)) <> "" ) Then Response.Write "<br>" &  rs(3)%>

      für was steht eigentlich das trim???

      ich bin hier davon ausgegangen, dass das telefon das 3. feld in deinem suchresultat ist, welches rs heißt...

      Wie meinst du das mit dem 3. Feld im Suchresultat??

      Ich meine ich habe noch einige andere Felder davor das Telefon ist nur ein Teil davon..

      Weiß trotzdem jetzt nicht wie ich da weitertun soll...

      Kannst du mir da weiterhelfen???

      MFG

      Markus

      1. Hallo,

        trim entfernt von einem string eventuelle leerzeichen (davor und danach)

        tja, das mitv frontpage ist so'ne sache...

        kannst du nicht lieber reines asp von hand schreiben? was frontpage da anstellt und für code generiert kann ich nicht sagen, hab aber gehört, das soll gerade in verbindung mit datenbanken ziemlichen Kauderwelsch fabrizieren...

        mit dem 3. feld meinte ich:

        du hast eine sql-abfrage-->sql ="select name,vorname,plz,telefon from tabelle order by name"

        dann die ausführung und ergebniszuweisung an rs-->
        Set rs = cn.Execute("sql)

        rs(3) enthält nun die spalte telefon, natürlich müßte man nun noch die einzelnen Datensätze des ergebnisses durchlaufen...

        was frontpage da erzeugt will ich lieber nicht sehen...

        Odium

        1. RE Hallo

          Jaja mit Frontpage is es nicht so einfach aber das müßte doch so auch irgendwie gehen..

          trim entfernt von einem string eventuelle leerzeichen (davor und danach)

          ok dann brauch ich kein trim hab keine Leerzeichen in den Feldbezeichnungen..

          bis jetzt funktionieren folgende Sachen bei mir:

          Es wird "test" ausgegeben wenn "Tel2" leer ist und auch wenn es nicht leer ist:

          <% If (FP_FieldVal(fp_rs,"Tel2")) <> ""  Then Response.Write "test" %>

          Es wird "Tel2" ausgegeben:

          <% If (FP_FieldVal(fp_rs,"Tel2")) <> ""  Then Response.Write FP_FieldVal(fp_rs,"Tel2") %>

          vl kann man da weiterbauen???

          MFG

          Markus