value im form abprüfen
Stefanie
- perl
0 Patrick Canterino0 Steffi
0 timothy0 Steffi
<input type='text' name='Strasse' value='Strasse' onFocus="if(this.value == 'Strasse'){ this.value=''};" size='21' maxlength='50' style='width: 220px; COLOR : #333333; FONT-FAMILY : Verdana,Arial; FONT-SIZE : 10px;'>
So lautet der HTML Code meines Forms.
Ich möchte nun in dem Perl Script, welches dieses Form verarbeitet, eine routine einbauen, die nicht nur prüft, ob der required Wert vorhanden ist (Das tuts schon), funktioniert allerdings in meinem Fall ja nicht, da ich dem required feld über value einen Wert zugewiesen habe. Das Skript denkt ja nun ein Eintrag sei erfolgt, ist aber ja gar nicht!!
Ich möchte quasi verhindern das das Skript diesen Wert akzeptiert, will sagen: Der required-Wert muss ungleich dem Value sein, damit man das Form abschicken kann.
Ich hoffe jemand versteht was ich meine?!?
Vielen Dank für die Hilfe!!!!
Steffi :-)
Hallo Steffi!
Ich möchte nun in dem Perl Script, welches dieses Form verarbeitet, eine routine einbauen, die nicht nur prüft, ob der required Wert vorhanden ist (Das tuts schon), funktioniert allerdings in meinem Fall ja nicht, da ich dem required feld über value einen Wert zugewiesen habe. Das Skript denkt ja nun ein Eintrag sei erfolgt, ist aber ja gar nicht!!
Ich möchte quasi verhindern das das Skript diesen Wert akzeptiert, will sagen: Der required-Wert muss ungleich dem Value sein, damit man das Form abschicken kann.
Erstmal gilt es, das Formularfeld auszulesen. Das geht am besten mit param() aus dem CGI-Modul:
use CGI qw(param);
my $strasse = param('Strasse');
Anschließend prüfest du ganz einfach, ob der Skalar $strasse nicht den Wert "Strasse" besitzt:
if($strasse ne "Strasse")
{
# mach was!
}
War es das, was du wolltest?
Viele Grüße
Patrick Canterino
Hallo Patrick!
Danke für deine ANtwort!
Ich möchte den check required ungleich value in meinem perlskript durchführen. Wenn required=value soll eine Fehler Seite erzeugt werden. Das passiert ohnehin schon bei leerem inputfeld. Jetzt soll es auch passieren, wenn der value nicht durch einen Neueintrag geändert wurde.
Steffi
Hallo Steffi!
Ich möchte nun in dem Perl Script, welches dieses Form verarbeitet, eine routine einbauen, die nicht nur prüft, ob der required Wert vorhanden ist (Das tuts schon), funktioniert allerdings in meinem Fall ja nicht, da ich dem required feld über value einen Wert zugewiesen habe. Das Skript denkt ja nun ein Eintrag sei erfolgt, ist aber ja gar nicht!!
Ich möchte quasi verhindern das das Skript diesen Wert akzeptiert, will sagen: Der required-Wert muss ungleich dem Value sein, damit man das Form abschicken kann.Erstmal gilt es, das Formularfeld auszulesen. Das geht am besten mit param() aus dem CGI-Modul:
use CGI qw(param);
my $strasse = param('Strasse');
Anschließend prüfest du ganz einfach, ob der Skalar $strasse nicht den Wert "Strasse" besitzt:
if($strasse ne "Strasse")
{
# mach was!
}War es das, was du wolltest?
Viele Grüße
Patrick Canterino
Hi Stefani
»»will sagen: Der required-Wert muss ungleich dem Value sein, damit man das Form abschicken kann.
Ich hoffe jemand versteht was ich meine?!?
Mit perl kannst du das Formular nicht prüfen. Perl laüft auf dem Server. Und damit die Formulardaten von einem Perl-Script geprüft werden können, muß das Formular erst einmal auf dem Server "landen", also abgeschickt worden sein.
Also ist mit Perl an dieser Stelle nichts zu machen. Eventuell mit JavaScript. Aber denk' dran, das kann auch abgeschaltet sein.
Das Beste wäre, das Formular wird so oder so abgeschickt, auf dem Server z.B. durch ein Perl-Script geprüft und dann entsprechend reagiert. Z.B. kannst du das Formular ja wieder (eventuell mit enstpr. Fehlermeldungen) wieder "zurück schicken"
Bye
Timothy
Danke für die Hilfe..
Ok, der required wert soll ungleich value sein.
Das Perl Skript gibt eh eine Fehler-HTML Seite zurück, wenn die Felder leer sind. Bei mir sind sie aufgrund des values ja nicht leer.
Wie kann ich also diesen Check in das Perl Skript einbauen, damit die Fehler-Seite auch kommt, wenn required=value?
Steffi
Hi Stefani
»»will sagen: Der required-Wert muss ungleich dem Value sein, damit man das Form abschicken kann.
Ich hoffe jemand versteht was ich meine?!?
Mit perl kannst du das Formular nicht prüfen. Perl laüft auf dem Server. Und damit die Formulardaten von einem Perl-Script geprüft werden können, muß das Formular erst einmal auf dem Server "landen", also abgeschickt worden sein.
Also ist mit Perl an dieser Stelle nichts zu machen. Eventuell mit JavaScript. Aber denk' dran, das kann auch abgeschaltet sein.
Das Beste wäre, das Formular wird so oder so abgeschickt, auf dem Server z.B. durch ein Perl-Script geprüft und dann entsprechend reagiert. Z.B. kannst du das Formular ja wieder (eventuell mit enstpr. Fehlermeldungen) wieder "zurück schicken"Bye
Timothy