cgicorner.ch

Informationen rund um Perl/CGI

Sie sind hier: Home > Forum
Yet Another Bulletin Board

Willkommen, Gast. Bitte Einloggen oder Registrieren.
23. Oktober 2021 um 16:26

Übersicht Übersicht Hilfe Hilfe Suche Suche Mitglieder Mitglieder Einloggen Einloggen Registrieren Registrieren
cgicorner.ch « Formmailer, wieder mal »


   cgicorner.ch
   anderes
   anderes

   Formmailer, wieder mal
« Vorheriges Thema | Nächstes Thema »
Seiten: 1  Antworten Antworten Bei Antworten benachrichtigen Bei Antworten benachrichtigen Drucken Drucken
   Autor  Thema: Formmailer, wieder mal  (Gelesen 2119 mal)
sv650at
YaBB Newbie
*



4 Zylinder sind 2 zuviel

   


Beiträge: 6
Formmailer, wieder mal
« am: 21. Februar 2007 um 14:54 »
Zitieren Zitieren Bearbeiten Bearbeiten

Hallo Jürg,
ich habe wieder mal ein problem mit formmailer.
Ich versuche mittels Texteinschränkung den Versand
durch Spammer zu verhindern.
Ich habe es so im Adminbereich/Template Konfiguration eingegeben:
NNMAIL_mail~!i~[main]
mail~!i~[main]
 
Mit Zahlen funktioniert es wunderbar, warum klappt das mit dem Wort "main" nicht? Mache ich was falsch.
"Main" deshalb, da ich vielfach Spammails mit Emailadresse "[email protected]" bekomme.  
Emailadresse ist in meinem Kontaktformular als Pflichtfeld auszufüllen.
 
Ich hoffe auf einen Tipp von dir und danke im Voraus.
Ciao Heinz
gespeichert
cgicorner.ch
YaBB Administrator
*****




Board Admin

   
Homepage E-Mail

Geschlecht: male
Beiträge: 790
Re: Formmailer, wieder mal
« Antworten #1 am: 21. Februar 2007 um 18:12 »
Zitieren Zitieren Bearbeiten Bearbeiten

Hallo Heinz
 
Du tauchst da in die Tiefen von Regular-Expressions ein. Hast du den Link "Perl-Regex" in der Template-Konfiguration gesehen? Dort hat es noch ein paar weitere Details.
 
Grundsätzlich ist es so, dass man mit [] eine ODER-Abfrage auf EINZELNE Zeichen macht, mit (|) eine ODER-Abfrage auf mehrere Wörter.
 
Oder anders ausgedrückt:
!i~[main]
bedeutet, dass die Mailadresse weder ein "m" noch ein "a", noch ein "i", noch ein "n" haben darf und entspricht nicht deinem gewünschten Ergebnis. Bei den Zahlen willst du mit  [0-9] oder [0123456789] hingegen wahrscheinlich genau das erreichen: es darf keine Zahl vorkommen, also weder eine "1", noch eine "2", noch eine "3" etc.
 
Mit mehreren Zeichen müsstest du mit () und | als Trennzeichen arbeiten:
(123|456) heisst also, dass 123 und 456 nicht vorkommen darf, 124 hingegen schon. Mit Wörtern heisst (hallo|welt|test) das die Wörter "hallo", "welt" und "test" nicht vorkommen dürfen (!i) bzw. eines davon vorkommen muss (=i).
 
Für dein Beispiel wäre also
NNMAIL_mail~!i~(main)
korrekt, wobei du - da du nur einen Suchbegriff eingibst - auf die Klammern verzichten kannst, also
NNMAIL_mail~!i~main
hingegen
NNMAIL_mail~!i~(main|haupt)
um zu definieren, dass weder main noch haupt erlaubt ist.
 
Ich hoffe, diese Antwort hilft dir weiter, dein Problem zu lösen, ansonsten kannst du dich natürlich jederzeit nochmals melden.
 
Gruss
Jürg
 
PS: Wenn du die Perl-Regular-Expressions dann einwandfrei beherrschst, kannst du formmailer schon fast von Grund auf selber neu programmieren Smiley Die Regexp von Perl sind wahnsinnig mächtig und man kann mit sehr wenig Code sehr viel erreichen; an die Schreibweise muss man sich aber zuerst etwas gewöhnen...
gespeichert

cgicorner.ch - Informationen rund um Perl/CGI
Jürg Sommer
Seiten: 1  Antworten Antworten Bei Antworten benachrichtigen Bei Antworten benachrichtigen Drucken Drucken

« Vorheriges Thema | Nächstes Thema »

cgicorner.ch » Powered by YaBB 1 Gold - SP3!
YaBB © 2000-2004. All Rights Reserved.