IPB

Willkommen, Gast ( Anmelden | Registrierung )

> Die Robots und das Kontaktformular, Wie wehren?
Conny
Beitrag 07.01.2008 - 9:09
Beitrag #1


Kommt Zeit, kommt Rat, kommt Conrad!
Gruppensymbol

Gruppe: Mods
Beiträge: 1.169
Mitglied seit: 21.11.2001
Wohnort: Altenkirchen, Westerwald
Mitglieds-Nr.: 42



Moin,
seit einiger Zeit plagen mir unerwünschte automatisch generierte Einträge in meinem Kontaktformular.
Die Pflichtfelder werden mit nichtssagenden Floskeln ausgefüllt, der Texteintrag ist gefüllt mit Links zu zweifelhafte Seiten...
Wie kann ich sowas verhindern?
Weder der Meta Tag: <META NAME="robots" CONTENT="noindex,nofollow"> noch ein eintrag in meinem robots.txt scheint was zu bringen.

cu
Conny
Go to the top of the page
 
+Quote Post
 
Start new topic
Antworten
Conny
Beitrag 08.01.2008 - 11:10
Beitrag #2


Kommt Zeit, kommt Rat, kommt Conrad!
Gruppensymbol

Gruppe: Mods
Beiträge: 1.169
Mitglied seit: 21.11.2001
Wohnort: Altenkirchen, Westerwald
Mitglieds-Nr.: 42



Ja, da haben sich unsere Postings überschnitten.
Ich werde die gesamte Prüfung auf einmal durchführen lassen müssen, in zwei Schritte wird wohl nicht gehen...

Soll ich nun das Formular zur Prüfseite übergeben und dort dann auch die Prüfung der Code implementieren, oder auf der Seite bleiben und die (gesammte) Prüfauswertung per include aufrufen?

Bis jetzt habe ich für die Auswertung (und was dann zu tun ist) eine zweite Seite.
cu
Conny
Go to the top of the page
 
+Quote Post
Thomas
Beitrag 08.01.2008 - 11:25
Beitrag #3


Nachschlagewerk des Orakels
Gruppensymbol

Gruppe: Mods
Beiträge: 955
Mitglied seit: 29.08.2006
Wohnort: Frankfurt am Main
Mitglieds-Nr.: 6.217



Ich habe in der Regel ein Skript - wenn ein Fehler auftritt, muss ja auch wieder das Formular angezeigt werden, idealerweise mit Markup für die fehlerhaften Felder.

Das Vorgehen wäre also informell folgendes:

Prüfen ob Daten vorliegen
ja -> Daten prüfen
nein -> Leeres Formular anzeigen

Daten prüfen (inklusive Captcha)
okay -> Daten absenden
nein -> Formular mit Daten und Fehlerhinweis anzeigen

Geht bei mir mittlerweile über eine Klasse, der ich die Informationen für die Formularfelder sowie Prüffunktionen etc. übergebe, ist aber gerade bei kleineren Formularen, die sich nicht ändern, mit Kanonen auf Spatzen geschossen. Für den Anfang sollte es reichen, eine Funktion zu schreiben, die den Datensatz bekommt und als zweites Argument ein Array mit Fehlermeldungen (Indizes identisch mit denen des Datensatzes). Diese erzeugt das Formular und setzt die Felder des Datensatzes dort ein und - sofern im zweiten Argument eine Fehlermeldung zum entsprechenden Index vorliegt - formatiert das Feld z. b. mit rotem Hintergrund und zeigt dahinter die Fehlermeldung an.
Go to the top of the page
 
+Quote Post
Andreas
Beitrag 08.01.2008 - 13:16
Beitrag #4


____________________
Gruppensymbol

Gruppe: Admin
Beiträge: 1.220
Mitglied seit: 20.10.2001
Mitglieds-Nr.: 3



ZITAT(Thomas @ 08.01.2008 - 11:25) *
Prüfen ob Daten vorliegen
ja -> Daten prüfen
nein -> Leeres Formular anzeigen

Daten prüfen (inklusive Captcha)
okay -> Daten absenden
nein -> Formular mit Daten und Fehlerhinweis anzeigen


Genau so macht das Sinn. Ist auch meine Vorgehensweise.
Go to the top of the page
 
+Quote Post
Conny
Beitrag 08.01.2008 - 15:19
Beitrag #5


Kommt Zeit, kommt Rat, kommt Conrad!
Gruppensymbol

Gruppe: Mods
Beiträge: 1.169
Mitglied seit: 21.11.2001
Wohnort: Altenkirchen, Westerwald
Mitglieds-Nr.: 42



ZITAT(Thomas @ 08.01.2008 - 11:25) *
Prüfen ob Daten vorliegen
ja -> Daten prüfen
nein -> Leeres Formular anzeigen

Daten prüfen (inklusive Captcha)
okay -> Daten absenden
nein -> Formular mit Daten und Fehlerhinweis anzeigen


Klar so funktioniert das jetzige Formular auch.
Nur das die Sendebestätigung oder der Fehlerhinweis auf einem extra Blatt stehen.
Ich Denke das kann auch so bleiben, ich muss lediglich ein Feld mehr Prüfen lassen (die Code Eingabe).

Wie es dann mit der Weiterbehandlung beider Scripte geht; also, wie ich das Captcha-Script mit dem bestehenden Script 'geschmeidig' zusammen füge ist wohl die große Herausforderung für mich.


cu
Conny
Go to the top of the page
 
+Quote Post
Thomas
Beitrag 08.01.2008 - 19:17
Beitrag #6


Nachschlagewerk des Orakels
Gruppensymbol

Gruppe: Mods
Beiträge: 955
Mitglied seit: 29.08.2006
Wohnort: Frankfurt am Main
Mitglieds-Nr.: 6.217



Hmmm - zurück über JS ist zwar ganz nett, aber bei daktiviertem JS blöd, da muss man dann erstmal selber drauf kommen und den Zurück-Button des Browsers anklicken. Auch vor diesem Hintergrund scheint mir die Behandlung in einem Skript günstiger, denn da liegen die Daten immer vor und zudem kannst du (sofern du willst) gezielter auf die Fehler eingehen, indem du z.B. die Felder einfärbst o.ä.

Dein Nachrichtenfeld ist übrigens mit einem Leerzeichen vorbelegt (&nbsp; als Inhalt im TEXTAREA-Tag) - ist das Absicht?
Go to the top of the page
 
+Quote Post
Conny
Beitrag 08.01.2008 - 21:34
Beitrag #7


Kommt Zeit, kommt Rat, kommt Conrad!
Gruppensymbol

Gruppe: Mods
Beiträge: 1.169
Mitglied seit: 21.11.2001
Wohnort: Altenkirchen, Westerwald
Mitglieds-Nr.: 42



Hallo Thomas,

Nun denn, das Ergebnis ist OnLine !

ZITAT(Thomas @ 08.01.2008 - 19:17) *
Hmmm - zurück über JS ist zwar ganz nett, aber bei daktiviertem JS blöd, da muss man dann erstmal selber drauf kommen und den Zurück-Button des Browsers anklicken. ...


Ja, ist mit Sicherheit nicht die eleganteste Lösung, jetzt wo das Formular erst im zweiten Schritt aufgerufen wird sehe ich aber überhaupt keine Möglichkeit mehr das Formular direkt auf zu rufen. Verlinkt man die Seite direkt wäre ja zunächst wieder eine Code eingabe fällig und das nervt wahrscheinlich auch, vor allem weil dann das Formular leer zurück gegeben wird und ALLES noch mal gemacht werden muss.
So wie es jetzt gestaltet ist (zurück mit JS), ist wenigstens alles noch da und habe ich die Möglichkeit 'das fehlende' aus zu bessern. Kurz: so ist es wohl das kleinere Übel rolleyes.gif

ZITAT(Thomas @ 08.01.2008 - 19:17) *
...Dein Nachrichtenfeld ist übrigens mit einem Leerzeichen vorbelegt ( als Inhalt im TEXTAREA-Tag) - ist das Absicht?

Ja, ist/war Absicht. Aber nur für mich wegen Übersichtlichkeit im Queltext als das alles entstanden ist. Heute ist es eigentlich egal.

cu
Conny
Go to the top of the page
 
+Quote Post
Thomas
Beitrag 09.01.2008 - 8:37
Beitrag #8


Nachschlagewerk des Orakels
Gruppensymbol

Gruppe: Mods
Beiträge: 955
Mitglied seit: 29.08.2006
Wohnort: Frankfurt am Main
Mitglieds-Nr.: 6.217



Irgendwie hatte ich mir das komplett anders vorgestellt - und zwar das Captcha-Feld als eines deiner Eingabefelder, am besten direkt vor dem Absendebutton. Man füllt dann das Formular aus, gibt als letztes noch den Captcha-Code ein und sendet dann die Daten. Klar, wenn dann ein Fehler in den Daten war, muss man nochmal einen neuen Captcha-Code eingeben, aber das ist meines Erachtens Standard (siehe z. B. die Registrierung in diversen Foren). So wie du das machst (man muss immer zweimal klicken) habe ich es bisher noch nicht gesehen - aber sicher geht es auch so wink.gif.

Was mir beim Testen aufgefallen ist: Wenn du das Formular so aufrufst:
http://www.reitschule-beck.de/a-kontakt.php?do=verify
erscheinen ein paar Fehlermeldungen.

Das solltest du eventuell noch abschalten, da damit unnötige Informationen nach außen gegeben werden. Am Besten fopen() mit @ davor aufrufen und vor der Weiterverarbeitung prüfen, ob ein gültiges Ergebnis zurückgeliefert wurde.

Außerdem kann dein Formular immer noch ganz einfach kompromittiert werden, ich schick dir mal ne PM sad.gif.

Der Beitrag wurde von Thomas bearbeitet: 09.01.2008 - 8:54
Bearbeitungsgrund: Fehlermeldungen gelöscht (macht ja keinen Sinn, wenn ich sie hier veröffentliche, obwohl sie eigentlich nicht veröffentlicht werden sollten ;))
Go to the top of the page
 
+Quote Post

Beiträge in diesem Thema
- Conny   Die Robots und das Kontaktformular   07.01.2008 - 9:09
- - harlequin   moin! Das Problem ist, dass diese Spammer sic...   07.01.2008 - 9:39
- - Andreas   ZITAT(Conny @ 07.01.2008 - 9:09) sei...   07.01.2008 - 10:36
|- - Thomas   Eine weitere Idee: Da es den Spammern meist um die...   07.01.2008 - 13:20
- - Conny   Ok, vielen Dank. ich werde mir diese 'Captchas...   07.01.2008 - 14:06
|- - Andreas   ZITAT(Conny @ 07.01.2008 - 14:06) Se...   07.01.2008 - 15:08
- - Conny   Hallo, bin bei "JAX" fündig geworden und...   07.01.2008 - 18:59
|- - Andreas   ZITAT(Conny @ 07.01.2008 - 18:59) Mö...   07.01.2008 - 20:07
- - Conny   Hallo, bin bereits ein Stückchen weiter. Die Code ...   07.01.2008 - 23:49
|- - Thomas   Ohne jetzt ganz genau auf den Code geguckt zu habe...   08.01.2008 - 8:37
- - Conny   Moin Thomas, wenn ich an der Stelle include verwe...   08.01.2008 - 10:08
|- - Andreas   ZITAT(Conny @ 08.01.2008 - 10:08) An...   08.01.2008 - 10:25
|- - Thomas   ZITAT(Conny @ 08.01.2008 - 10:08) An...   08.01.2008 - 10:52
- - Conny   Wenn ich statt include header('Location: konta...   08.01.2008 - 10:56
|- - Thomas   Mit dem Aufruf von header() wird ein neuer Request...   08.01.2008 - 11:00
- - Conny   Ja, da haben sich unsere Postings überschnitten. I...   08.01.2008 - 11:10
|- - Thomas   Ich habe in der Regel ein Skript - wenn ein Fehler...   08.01.2008 - 11:25
|- - Andreas   ZITAT(Thomas @ 08.01.2008 - 11:25) P...   08.01.2008 - 13:16
|- - Conny   ZITAT(Thomas @ 08.01.2008 - 11:25) P...   08.01.2008 - 15:19
|- - Thomas   Hmmm - zurück über JS ist zwar ganz nett, aber bei...   08.01.2008 - 19:17
|- - Conny   Hallo Thomas, Nun denn, das Ergebnis ist OnLine ...   08.01.2008 - 21:34
|- - Thomas   Irgendwie hatte ich mir das komplett anders vorges...   09.01.2008 - 8:37
- - Conny   So, ich glaube ich habe eine elegante Lösung gefun...   08.01.2008 - 20:58
- - Conny   Moin Thomas, vielen Dank für die Testreihe! Di...   09.01.2008 - 10:01
|- - Thomas   ZITAT(Conny @ 09.01.2008 - 10:01) Di...   09.01.2008 - 11:03
- - Conny   Moin Thomas, HTMLif ($_POST['nam...   10.01.2008 - 8:39
- - Thomas   ZITAT(Conny @ 10.01.2008 - 8:39) HTM...   10.01.2008 - 9:21
- - harlequin   moin! ZITAT(Thomas @ 10.01.2008 - 9...   10.01.2008 - 9:48
- - Thomas   ZITAT(harlequin @ 10.01.2008 - 9:48)...   10.01.2008 - 10:13
- - harlequin   ZITAT(Thomas @ 10.01.2008 - 10:13) Z...   10.01.2008 - 11:31
- - Thomas   ZITAT(harlequin @ 10.01.2008 - 11:31...   10.01.2008 - 12:07
- - harlequin   ZITAT(Thomas @ 10.01.2008 - 12:07) Z...   10.01.2008 - 12:35


Reply to this topicStart new topic
1 Besucher lesen dieses Thema (Gäste: 1 | Anonyme Besucher: 0)
0 Mitglieder:

 



RSS Vereinfachte Darstellung Aktuelles Datum: 15.05.2025 - 15:22

taschenkalender
expertise-panel IPS Driver Error

IPS Driver Error

There appears to be an error with the database.
You can try to refresh the page by clicking here