Capior: Verwendung von Null: 'Replace'

Hi

Wieso liefert mir folgende Funtkion folgende Fehlermeldung?
---------
FUNCTION ReplaceBreak(string)
  If string <> "" Then
    string = Replace(string,"<br>",vbNewLine)
  End If
  ReplaceBreak = string
End FUNCTION
---------
Laufzeitfehler in Microsoft VBScript- Fehler '800a005e'

Ungültige Verwendung von Null: 'Replace'
---------

Danke und tschüss
  Capior

  1. Hi,

    Wieso liefert mir folgende Funtkion folgende Fehlermeldung?

    FUNCTION ReplaceBreak(string)
      If string <> "" Then
        string = Replace(string,"<br>",vbNewLine)
      End If
      ReplaceBreak = string
    End FUNCTION

    Laufzeitfehler in Microsoft VBScript- Fehler '800a005e'

    Ungültige Verwendung von Null: 'Replace'

    Vielleicht kennt er vbNewLine nicht.
    Warum ersetzt du "<br>" durch Chr(13) & Chr(10)? Normalerweise werden doch die Standardumbrüche durch <br> (oder <br/> nach XHTML, dem Nachfolger von HTML4) ersetzt.

    m.

    1. Hi,

      hi

      Wieso liefert mir folgende Funtkion folgende Fehlermeldung?

      FUNCTION ReplaceBreak(string)
        If string <> "" Then
          string = Replace(string,"<br>",vbNewLine)
        End If
        ReplaceBreak = string
      End FUNCTION

      Laufzeitfehler in Microsoft VBScript- Fehler '800a005e'

      Ungültige Verwendung von Null: 'Replace'

      Vielleicht kennt er vbNewLine nicht.
      Warum ersetzt du "<br>" durch Chr(13) & Chr(10)? Normalerweise werden doch die Standardumbrüche durch <br> (oder <br/> nach XHTML, dem Nachfolger von HTML4) ersetzt.

      Ja, aber mein kunde schreibt in eine textarea...u.U macht er zeilenumbrüche, diese müssen dann umgeschrieben werden und in der datenbank gespeichert werden (damit dann die ausgabe korrekt erfolgt), wenn er jetzt das geschriebe wieder editieren will, soll es ihm in der textarea keine <br>'s sondern vbnewline (kennt er übrigens) anzeigen.

      m.

      danke und tschüss
        capior

      1. Hi,

        Ja, aber mein kunde schreibt in eine textarea...u.U macht er zeilenumbrüche, diese müssen dann umgeschrieben werden und in der datenbank gespeichert werden (damit dann die ausgabe korrekt erfolgt), wenn er jetzt das geschriebe wieder editieren will, soll es ihm in der textarea keine <br>'s sondern vbnewline (kennt er übrigens) anzeigen.

        Genau diese Funktionalität habe ich auch schon für viele Präsentationen programmiert. Du solltest aber den Inhalt der Textarea in der DB abspeichern, ohne den Zeilenumbruch umzuwandeln. Nur für die reine Ausgabe muss dann eine Umwandlung des Zeilenumbruches in ein "<br/>" erfolgen.
        Wenn du es vorher umwandelst hast du folgendes Problem: Du kannst bei der Ausgabe kein Server.HTMLEncode mehr auf das Feld anwenden (um die Umlaute und Sonderzeichen umzuwandeln), weil das <br> dann nicht mehr als Zeilenumbruch interpretiert, sondern direkt angezeigt wird. Hat dein Nutzer aber vielleicht Anführungsstriche oder andere Zeichen eingeben, die die Ausgabe direkt beeinflussen bzw. den Code total durcheinanderbringen können bist du aber auf die Umwandlung angwiesen.

        Deshalb:
        Wandle erst die Zeichen um und mache dann aus dem Chr(13) & Chr(10) ein </br>

        ... = Replace(Server.HTMLEncode(string), Chr(13) & Chr(10), "<br/>")

        Vielleicht hilft dir das weiter.

        m.

        1. Hi

          ja, klar.....das hilft!
          viel dank!!!!

          schöne, gruss
            capior

  2. Hi,
    Wenn Du nicht sicher bist was da drinsteht, solltest Du abfragen :
    if string <> "" or isnull(string) then
    .....
    GRuss
    Christian

    Hi

    Wieso liefert mir folgende Funtkion folgende Fehlermeldung?

    FUNCTION ReplaceBreak(string)
      If string <> "" Then
        string = Replace(string,"<br>",vbNewLine)
      End If
      ReplaceBreak = string
    End FUNCTION

    Laufzeitfehler in Microsoft VBScript- Fehler '800a005e'

    Ungültige Verwendung von Null: 'Replace'

    Danke und tschüss
      Capior

    1. hi

      danke

      tschüss
        capior