Codierung und Spamschutz für mailadresse

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Codierung und Spamschutz für mailadresse

    HI Leute ich hab da ein Paar fragen:

    1)
    Hab mir grad bei meiner Webseite gedanken über die Codierung gemacht.
    Also ob ANSI(nem mal an dass das dann ASCII bedeutet) oder UTF-8 oder Unicode.
    Wollte wissen was den da am Besten ist. Meine Webauftritt ließt viele Daten auch aus einer MySQL-DB aus.
    Und es kommt auch vor das aus diesen Daten PDFs, XML, Mails erstellt werden. (also im moment noch her selten bis gar nicht $Var

    Die DB ist im moment auf utf8_general_ci. Aber wo ist den Jetzt der unterschied zu utf8_unicode_ci oder uft8_bin ?
    Aja damit die Verbindung zur DB auch klappt natürlich : SQL> SET NAMES utf8; bei jeder verbindung. (oder gibts da was besseres/anderes ?)

    Die html/php datein sind die meisten (fasst alle) UTF-8 ohne BOM codiert.
    Da gäbe es ja noch ANSI, UTF-8 mit BOM, Unicode/Unicode Big Endian. Nur wo ist bei all denen eigentlich der unterschied,
    also mal abgesehen vom Zeichenumfang, das ist ja wohl klar ....

    dachte ich frag auch gleich obs da probleme mit der FTP übertragung (ASCII/BIN) geben kann,
    da ich da letztens öffters hinerteinander stecken geblieben bin...


    Naja und damit auch der Browser Kappiert was gesprochen wird:
    <?php
    header('Content-type: text/html; charset=utf-8');
    echo '<?xml version="1.0" encoding="utf-8"?>';
    echo '<meta http-equiv="content-type" content="text/html; charset=utf-8" />';
    ?>

    ist irgendwas an meinem Vorgehen absolüter blödsin ? oder würdet ihr das auch so machen ?
    bzw wie macht ihr das? Kann es zu pars probs kommen oder so ?

    2)
    Spammschutz: Bis jetzt haben sich die E-Mailadressen auf der Webseite noch nie geändert, jetzt müsste ich aber trotzdem
    einige ändern. Früher wurden die Mail-links (mailto:hugo@eample.com) in JavaScript irgendwie so verschlüsselt, dass diese nur
    bei eingeschaltenem JS anklicken liesen. andernfalls wurde die adresse als plaintext bis zum @ ausgegeben. dieses wurde durch ein bild
    mit dem alt und titel tag ="@" ersetzt und dann die Domein. dadurch konnte der Surfer die Adresse kopieren.
    So jetzt zu miener Frage, macht das überhaubt sinn? Können die Mail-Harvester nicht auch JavaScript ?
    Sonst hätte ich nämlich vor eine Php-funktion zu schreiben die mir die den Mail-link so umschreibt das er eben geschützt ist, und ich das nicht extra bei jeder mail ady von hand machen muss. (da wäre dann meine Frage welche ver & entschlüsselung können beide PHP und JavaScript ?)

    oder wie löst ihr das ?

  • #2
    zu 2)
    Was spricht gegen ein Captcha ?
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      zu 1)

      http://de.wikipedia.org/wiki/ansi

      http://de.wikipedia.org/wiki/ascii

      http://de.wikipedia.org/wiki/utf8
      "Nicht jeder Mensch kann und soll Programmieren[...]".

      Kommentar


      • #4
        Original geschrieben von jahlives
        zu 2)
        Was spricht gegen ein Captcha ?
        Das man die nicht anklicken kann

        Danke, aber außer dass ich jetzt weiß warum ich beim UTF-8 mit BOM
        probleme mit dem header senden habe weiß ich auch nicht ..

        Kommentar


        • #5
          ... (da wäre dann meine Frage welche ver & entschlüsselung können beide PHP und JavaScript ?)
          Macht dir darüber keine Gedanken. Wenn es ginge, dann müsstest du Javascript den verwendeten Schlüssel irgendwie im Quellcode mitgeben. Und ALLES was im Quellcode steht kann mit einem entsprechenden Bot auch gelesen werden.
          oder wie löst ihr das ?
          Mittels Captcha. Weil ich dann auf JS verzichten kann. Eine JS Lösung zwingt den User JS aktiviert zu haben, was längst nicht alle so wollen.

          Gruss

          tobi
          Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

          [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
          Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

          Kommentar


          • #6
            Original geschrieben von jahlives
            Mittels Captcha.
            Hoffentlich keins in Bildform?

            Denn ...
            Weil ich dann auf JS verzichten kann. Eine JS Lösung zwingt den User JS aktiviert zu haben, was längst nicht alle so wollen.
            ... das zwingt den Nutzer, die Anzeige von Bildern aktiviert zu haben, was längst nicht alle wollen.
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              ... das zwingt den Nutzer, die Anzeige von Bildern aktiviert zu haben, was längst nicht alle wollen.
              OffTopic:

              Was ist häufiger anzutreffen ? Deaktivierte Bildanzeige oder deaktiviertes JS?


              <backtopic>
              @wahsaga
              Welche Lösung würdest du denn vorschlagen ?
              </backtopic>

              Gruss

              tobi
              Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

              [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
              Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

              Kommentar


              • #8
                Also ich benutze eine Funktion, die die Email adresse in UniCode umwandelt. Den String kann man dann im HTML verwenden.

                für test@test.de
                wird dann z.B.
                Code:
                &amp;#116;&amp;#101;&amp;#115;&amp;#116;&amp;#64;&amp;#116;&amp;#101;&amp;#115;&amp;#116;&amp;#46;&amp;#100;&amp;#101;
                ausgegeben
                Zuletzt geändert von wahsaga; 18.07.2007, 11:09.
                Beantworte nie Threads mit mehr als 15 followups...
                Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                Kommentar


                • #9
                  @MelloPie
                  Und was sollte einen vernünftig programmierten Bot daran hindern die Codierung der Seite auszulesen und danach die Zeichenfolge wieder lesbar zu machen ? Der Bot muss ja nur nach dem Code für @ suchen...

                  Gruss

                  tobi
                  Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                  [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                  Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                  Kommentar


                  • #10
                    Die meisten Roboter sind halt noch nicht ganz so aufwendig, da genügend Futter vorhanden ist.

                    Der Vorteil ist halt, dass man den UC Code auch im mailto verwenden kann. und bei einer Ausgabe auf dem Browser lesbar dargestellt wird.

                    Irgendwie hab ich aber auch am Thema vorbeigeschrieben....
                    Beantworte nie Threads mit mehr als 15 followups...
                    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

                    Kommentar


                    • #11
                      Die meisten Roboter sind halt noch nicht ganz so aufwendig, da genügend Futter vorhanden ist.
                      Stimmt. Aber solange man das Futter in den Quellcode packt darf man sich nicht wundern wenn irgendein Bot den Schutz umgeht. Klar das mit dem Mailto funzt mit dem Captcha nicht direkt, aber man könnte beim Klick auf Kontakt erstmal das Captcha ausgeben, wenn das Captcha korrekt gelöst wurde, kann man bei der Augabe der Seite den Kontakt mit dem Mailto ersetzen

                      Gruss

                      tobi
                      Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                      [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                      Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                      Kommentar


                      • #12
                        Original geschrieben von jahlives
                        Welche Lösung würdest du denn vorschlagen ?
                        Ich bin mit meiner ganz zufrieden - Mailadresse wird erst nach Betätigen des Buttons eines POST-Formulars angezeigt. Gängige Bots nutzen wohl bisher nur GET.

                        Original geschrieben von MelloPie
                        Also ich benutze eine Funktion, die die Email adresse in UniCode umwandelt.
                        Die Erkennung dafür dürfte wohl schon eingebaut sein, wenn man sich seinen Bot basierend auf einem Standard-HTML-Parser zusammenklickt.



                        Man sollte es generell nicht übertreiben mit dem "unkenntlich Machen" von Mailadressen, die für den Besucher nutzbar sein sollen.
                        Zum einen gibt es genügend Berichte auch von Leuten, die ihre Mailadressen seit Jahren auf ihren Seiten stehen haben, vollkommen unkodiert - und darauf trotzdem wenig bis gar keinen Spam bekommen.
                        Zum anderen kommt Spam früher oder später sowieso - ein guter Spam-Filter ist heutzutage also sowieso unumgänglich.

                        Sich also immer aufwendigere Tricks auszudenken, wie man da irgendwas "Kodieren" oder "Verschlüsseln" könnte, hilft auch kaum weiter - zumal es ja auch noch benutzbar bleiben soll, bleiben muss. Dem Abmahn-Anwalt der Konkurrenz gefällt es ja vielleicht auch, wenn er ohne aktiviertes Javascript oder ohne Bildanzeige gar keine rechtsgültige Kontaktangabe findet ...
                        I don't believe in rebirth. Actually, I never did in my whole lives.

                        Kommentar


                        • #13
                          Naja die Capchar abfrage kommt wohl nicht in Frage, will das meine Benutzer den Link anklicken können sollen und nicht vorher irgendwas eingeben müssen ...

                          zu Kontakt aufname für rechtsanwälte könnte ich eine Adresse in eine Tabelle eingetragen ... ist leserlich erkennbar, kann aber nicht kopiert werden und auch im quellcode nciht leicht erkannt werden da die ja ziemlich auseinander steht .... oder wenn tabelle zu leicht ist. dann Divs ..
                          Und das @ wird sowieso mit einem Bild realisiert ... desen Alt/Title Atribut als @ hat ... (da könnte man die graphik kopieren mit Text und hatt dann im Clipboard auch ein @)

                          Als JS (+CSS) verschl hätt ich da zB auch: http://www.1ngo.de/web/spam.html
                          aber da kann der Bot wie gesagt auch sein JS aktivieren ... und CSS


                          hab jetzt auch noch diese Variante ausgegraben ...
                          <a href="mail_me.php">Mail</a>
                          <?php
                          header("Location: mailto://user@example.com");
                          ?>

                          man könnte die Mail adresse da dann verschlüsselt übergeben ...

                          aber die klappt leider nicht überall... (IE6 + Thunderbird 1.5)

                          Kommentar


                          • #14
                            Den Sinn dieses Schnippels musst du mir erläutern
                            PHP-Code:
                            <a href="mail_me.php">Mail</a>
                            <?php
                            header
                            ("Location: mailto://user@example.com");
                            ?>
                            Gruss

                            tobi
                            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                            Kommentar


                            • #15
                              Original geschrieben von jahlives
                              Den Sinn dieses Schnippels musst du mir erläutern
                              Erlaube deiner unendlichen Phantasie, dir das in zwei getrennten Scripten vorzustellen ...

                              Link verweist auf Script, Script versucht per Location auf eine mailto-Adresse "weiterzuleiten". (Wobei mir das auch zu unsicher wäre, funktioniert vermutlich nur in Spezialkonstellationen.)


                              Ausserdem sind die Sammelbots ja wohl darauf geeicht, Links zu folgen - nur so können sie das "ganze" Web umgraben - wenn die dann im Location-Header eine mailto-Adresse vorfinden, wären sie reichlich blöd, das nicht zu bemerken.
                              I don't believe in rebirth. Actually, I never did in my whole lives.

                              Kommentar

                              Lädt...
                              X