Schrift
[thread]2919[/thread]

Data::FormValidator Probleme: unbekannter Fehler

Leser: 1


<< >> 3 Einträge, 1 Seite
pktm
 2004-08-10 03:02
#29342 #29342
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Hallo!

Ich arbeite gerade zum ersten Mal mit Data::FormValidator *duck* ^^
Und zwar würde ich gerne meinen Query-String mittels $query->Vars() und meinem Profil (siehe weiter unten) validieren.
Das sieht bei mir gerade so aus:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
sub validate {
   my $self = shift;
   my $q = $self->query();
#print STDERR;
#print STDERR Data::Dumper::Dumper($self->param('dfv_profile'));
   my $results = Data::FormValidator->check($q->Vars(), $self->param('dfv_profile'));
#print STDERR;
   if(  $results->has_missing()     # This method returns true if the results contains missing fields.
     or $results->has_invalid()     # This method returns true if the results contains fields with invalid data.
     or $results->has_unknown() ){  # This method returns true if the results contains unknown fields.
       # Fehler, redirect to showErrorForm
       return 'error validate';
   }elsif( $self->param('go2success') ){
       # ok, redirect to showSuccess
   }else{
       # ok, redirect to showReview
       return 'else validate';
   }
   return 'validate';
} # /validate


Als Fehler erhalte ich dieses hier:
Code: (dl )
Error executing run mode 'validate': No such profile validate


use strict;
use warnings;
use diagnostics;
sind natürlich an.
use Carp qw(fatalsToBrowser) wird nicht gebraucht, da ich den gesammten Inhalt, inkl. aller Warnungen und der Gleichen in meinem Editor (Open Perl IDE) angezeigt bekomme.

Kann wer etwas mit diesem Fehler anfangen?
Hört sich so an, als wäre mein dfv_profile invalid.
Das sieht so aus:
Quote
$VAR1 = {
         'constraints' => {
                            'eMail' => {
                                         'name' => 'emailValid',
                                         'constraint' => qr/(?-xism:^[\w\d][\w\d\.\-]*\@([\w\d\-]+\.)+[a-zA-Z]{2,4}$)/
                                       }
                          },
         'required' => [],
         'msgs' => {
                     'constraints' => {
                                        'emailValid' => 'Bitte geben Sie eine gültige eMail-Adresse ein'
                                      },
                     'format' => 'Fehler: %s',
                     'missing' => 'Fehlend!',
                     'any_errors' => 'Error',
                     'invalid_seperator' => '',
                     'invalid' => 'Problematisch!',
                     'prefix' => 'error_'
                   }
       };

Hilfe :)
mfg pktm
http://www.intergastro-service.de (mein erstes CMS :) )
pktm
 2004-08-10 16:10
#29343 #29343
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Fehler gefunden. Wie sagt man so schön, wer lesen kann ist klar im Vorteil.
Data::FormValidator::Tutorial
Quote
If you use CGI.pm to handle accessing the form data, there's no easy way to send $q to the FormValidator since it wants a hash. There is a little known function Vars() that will do this conversion for you.

my %fdat = $q->Vars;


Ich habe nur $q->Vars() angegeben, müsste aber {$q->Vars()} bzw. \%fdat (wie oben) lauten.
mfg pktm
http://www.intergastro-service.de (mein erstes CMS :) )
pq
 2004-08-10 16:38
#29344 #29344
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
[quote=pktm,10.08.2004, 14:10]Ich habe nur $q->Vars() angegeben, müsste aber {$q->Vars()} bzw. \%fdat (wie oben) lauten.[/quote]
oder auch scalar $q->Vars(). in skalarem kontext gibt Vars eine
hashref zurück. aber vorsicht, die ist ein tied hash, also durch veränderungen
ändert sich auch das $cgi-objekt.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
<< >> 3 Einträge, 1 Seite



View all threads created 2004-08-10 03:02.