Willkommen in der Webstatt
User-1 am 06.07.07 14:22

Hallo Leute

Ich habe eine Bitte, und zwar habe ich immer noch Spameinträge in einem Gästebuch einer Seite die ich betreue. Captcha ist installiert, hin und wieder schaffen es trotzdem ein paar Bots.

Die Spameinträge haben ja alle immer viele Links drin, jetzt meine Frage: hat jemand eine Funktion die zählt wieviele Links in einem String vorkommen? Oder könnte jemand eine solche Funktion schreiben? Ich habe leider keine Ahnung wie ich das schreiben könnte.

Wäre super praktisch, dann könnte ich alle Einträge sperren die mehr als 2-3 Links enthalten.

xyz-48ke schonmal!

Gruss

netcup.de Warum gibt es hier Werbung?
User-2 am 06.07.07 14:49

sollte es eigentlich sein....
function countlinks($string) {
preg_match_all("/<a.*?>/is",$string,$match);
return count($match[0]);
}


mhh...geht es auch irgendwie ohne RegExen...mir fällt grad keine methode ein, bin auch müde -.-

User-3 am 06.07.07 16:01

theoretisch könntest du auch mit substr_count() überpfrüfen wie oft ein "href" im String vorkommt... dann hättest du auch (fast) alle Links.

User-2 am 06.07.07 23:23

Quote
Original von xyz-52
theoretisch könntest du auch mit substr_count() überpfrüfen wie oft ein "href" im String vorkommt... dann hättest du auch (fast) alle Links.

nachteil: wenn der String dann ist: href href href href
dann siehts schlecht aus -.- aber das wird kaum einer schreiben :D

User-4 am 16.07.07 19:06

Quote
preg_match_all("/<a.*?>/is",$string,$match);

Diesen Ausdruck würde ich verfeinern, falls ein <a name=...> auch noch vorkommt.

Falls PHP5 vorhanden ist, kann man auch preg_replace() mißbrauchen.
Seit PHP5 gibt es hier einen 5 Parameter, der alle Ersetzungen mitzählt.
Natürlich wird dabei nicht wirklich ersetzt, man erfasst nur diesen Wert.

User-1 am 23.07.07 08:21

Ich weiss langsam nicht mehr wie ich diese scheiss Spam bots bekämpfen soll. Zuerst ein Captcha rein -> war zu unsicher, dann ein besseres Captcha rein -> auch zu unsicher, dann diese Links-zählen Funktion -> und jetzt kommen Beiträge wie "Nice Website ;)" und als Webseite geben sie ihre Spam Adresse an.

Wie macht ihr das mit der ganzen Spam Geschichte? Hat jemand schonmal ein Filter gebaut, mit Bad-words und so?

Gruss

User-4 am 23.07.07 09:35

Da stellt sich mir doch die Frage wie dein Captcha eingebaut wurde.

User-5 am 23.07.07 10:59

Die Einträge kommen doch sicherlich von Servern ausm Ausland?

xyz-48n könntest du die IPs sperren bwz. nur deutsche zulassen.
Hier gibt es eine CSV, mithilfe der man der IP das Land zuordnen kann: http://ip-to-country.webhosting.info/

User-1 am 23.07.07 12:20

Hm, möchte lieber keine IP's sperren, da z.T. auch normale Einträge aus dem Ausland kommen. Ein Content Filter wäre wahrscheinlich die bessere Lösung meinst du nicht?

User-5 am 23.07.07 12:23

dann viel spaß :D sind doch nicht immer die selben einträge, wie du bereits festgestellt hast.

zeig mal dein gästebuch :rolleyes:

User-1 am 23.07.07 12:27

nein, aber in den url's der webseite kommt ja meistens was mit porn oder produkten..

http://server25.hostpoint.ch/~zeroweb/vcit/?load=gaestebuch&add=new

User-4 am 23.07.07 12:29

Quote
Original von xyz-215
Die Einträge kommen doch sicherlich von Servern ausm Ausland?

xyz-48n könntest du die IPs sperren bwz. nur deutsche zulassen.
Hier gibt es eine CSV, mithilfe der man der IP das Land zuordnen kann: http://ip-to-country.webhosting.info/


Na ob das ne gute Idee ist, bei jedem Eintrag erst über 77000 Einträge abzusuchen ?
Denkt auch mal ein wenig an die Performance.

User-1 am 24.07.07 13:05

thiemm? :rolleyes:

User-5 am 24.07.07 13:21

Das Captcha sieht gut aus. Wundert mich, dass die Bots das knacken ;(

Handelt es sich vll dabei um ein fertiges Script? xyz-48n könnte es sein, dass die Bots die Grafik kennen und es somit kein Problem für sie ist.

Denn warum sollten sie sich ausgerechnet auf dein Gästebuch spezialisieren!?

User-4 am 24.07.07 18:15

> Das Captcha sieht gut aus. Wundert mich, dass die Bots das knacken

Falsch, dass es funktioniert konnte ich eben selber testen.
Testeintrag 24.07.2007 - 18:16

Und dabei habe ich gar nicht das Captcha benutzt !
Das ist die Schwachselle beim Gästebuch !

Wenn jemand einfach kein Session-Cookie animmt (also Bots etc...) dann darf auch kein Eintrag erfolgen.
xyz-48n nutzt auch ein Captcha nichts :)

User-1 am 24.07.07 22:52

das script ist von bnightspeeder. die grafik von mir, fonts ausgetauscht, farben geändert usw.

danke für den hinweis, ich habe mal eine entsprechende Abfrage eingebaut. Scheint zu funktionieren.

User-4 am 25.07.07 08:56

Besser wäre es wenn gleich ein Hinweis kommt, wenn kein Cookie angenommen wird.
Ist halt xyz-19utzerfreundlich :)

User-1 am 25.07.07 13:26

naja ich denke nicht dass das oft vorkommen wird :)

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt