Thomas Mühlgrabner: Formular: Vor Senden Wörter ersetzen

Hallo

Ich würde gerne bei meinem Gästebuchformular Smileys einbauen.
Zum Verschicken verwende ich ein .cgi-Script, dass der Webspace-Anbieter zur Verfügung stellt.

Jetzt würde ich gerne Wörter/Smileys wie :) :beer: usw. durch <img src="xyz.gif"> ersetzen, bevor das Formular versendet wird.

Kann mir da jemand helfen ?

den Quelltext des Gästebuches findet Ihr unter
www.koenig-der-arktis.de ->GBuch

Danke im Vorraus für (hilfreiche) Antworten

  1. es gibt unter JS ein befehl namens replace()
    der funktioniert wie folgt:

    document.deinform.deinfeld.replace(/:)/, "<img src='smile.gif'>");
    document.deinform.deinfeld.replace(/:beer:/, "<img src='beer.gif'>");
    .
    .
    .

    -------------------------------------------
    http://www.script-fabrik.de
    gleich anmelden zur Hompage des Monats

    1. moin,

      document.deinform.deinfeld.replace(/:)/, "<img src='smile.gif'>");
      document.deinform.deinfeld.replace(/:beer:/, "<img src='beer.gif'>");

      zwei anmerkungen, er sollte den global modifier setzen, um mehrere
      Vorkommen abzudecken.
      und was viel wichtiger ist Klammern aller Art zu maskieren
      document.deinform.deinfeld.replace(/:)/g, "<img src='smile.gif'>");
      .....................................^^.^

      nachlesbar:
      http://developer.netscape.com/docs/manuals/js/client/jsref/regexp.htm

      bye eddie

      1. moin,

        document.deinform.deinfeld.replace(/:)/, "<img src='smile.gif'>");
        document.deinform.deinfeld.replace(/:beer:/, "<img src='beer.gif'>");
        zwei anmerkungen, er sollte den global modifier setzen, um mehrere
        Vorkommen abzudecken.
        und was viel wichtiger ist Klammern aller Art zu maskieren
        document.deinform.deinfeld.replace(/:)/g, "<img src='smile.gif'>");
        .....................................^^.^

        nachlesbar:
        http://developer.netscape.com/docs/manuals/js/client/jsref/regexp.htm

        bye eddie

        Danke :)

        Jetzt müsste ich nur noch wiessen, wie ich einen Text nur per Mausklick einfüge (Klick auf Smiley -> Einfügen an aktueller Position im Text) ;)

        1. hi,

          nix für ungut, aber:
          http://www.learn.to/quote

          Jetzt müsste ich nur noch wiessen, wie ich einen Text nur per Mausklick einfüge (Klick auf Smiley -> Einfügen an aktueller Position im Text) ;)

          http://selfsuche.teamone.de/cgi-bin/such.pl?suchausdruck=textarea+cursorposition&lang=on&feld=alle&index_4=on&index_5=on&hits=100

          bye eddie

          1. nix für ungut, aber:
            http://www.learn.to/quote

            oh, sorry :)

            Eine NS+IE Version habe ich wo gekl, äh.. gefunden ;)

            Verbesserungsvorschläge für das Skript ?

            http://members.vol.at/tm/gbuch.html

            1. hi,

              Eine NS+IE Version habe ich wo gekl, äh.. gefunden ;)

              Verbesserungsvorschläge für das Skript ?

              sieht brauchbar aus, noch dazu wo für die Browser ohne die funktionen
              das smiley angehangen wird als ausweichmöglichkeit.....
              aber:
              <img src='smile\beer.gif'>
              ................^
              über die ausrichtung dieses slashes würde ich nochmal nachdenken ;-)

              bye eddie

              1. <img src='smile\beer.gif'>
                ................^
                über die ausrichtung dieses slashes würde ich nochmal nachdenken ;-)

                ah jo :)

                wie ging das nochmal ? *nachdenk*
                /\beer.gif'> ?

                Übrigens funktioniert das Skript nicht mit NS4...

                Hab leider nur NS6 zum Testen gehabt :(

                1. moin,

                  wie ging das nochmal ? *nachdenk*
                  /\beer.gif'> ?

                  is nich dein ernst, oder? Backslshes sind die Verzeichnistrenner in den
                  winzigweich-systemen. Vernünftige OS verwenden generell slashes!!!!!!
                  Und in HTML, Javascript, CGI-Scripten aller Art werden immer slashes
                  verwendet. Backslashes dienen zur Maskierung!!

                  außerdem empfehle ich noch einen Besuch beim Validator
                  z.b. </input> gibt es nicht!
                  du öffnest <body> 2x statt es zu schließen
                  Seite hat keine title angabe (erlaubt, aber unsauber)
                  value parameters dürfen nicht über zeilen veteilt sein (Line 619-629)
                  etc.

                  Übrigens funktioniert das Skript nicht mit NS4...

                  was mich nicht wundert....

                  bye eddie