[GastForen Archiv Perl und CGI Anfängerproblem bei Passwortabfrage...

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Archiv - Archivierte Foren
Themen
Beiträge
Moderatoren
Letzter Beitrag

Anfängerproblem bei Passwortabfrage...

Anonym
Beiträge gesamt: 22827

28. Jan 2005, 17:06
Beitrag # 1 von 3
Bewertung:
(2212 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Ich hatte die leidvolle Anfängeraufgabe, ein Perl-Skript zu erstellen, in dem mit Hilfe eines Hashes eine Passwortabfrage stattfinden soll. Im Großen und Ganzen ist mir das auch geglückt, das Skript läuft fehlerfrei - bis auf eine Ausnahme: Wenn ich einen Benutzernamen eingebe, der nicht im Hash definiert wurde, bekomme ich viele Fehlermeldungen und bin dann doch erfolgreich eingeloggt :-(

Kann mir jemand dabei helfen, die Überprüfung des Benutzernamens noch in dieses Skript einzubauen?

Hier mein bescheidenes Werk:


#!/usr/bin/perl -w

%login = ("Franz" => "null",
"Peter" => "eins",
"Anna" => "zwei",
"Willi" => "drei",
"Inga" => "vier",
);
print "Bitte geben Sie Ihren Benutzernamen ein:\n";
$user = <STDIN>;
chomp $user;

if(defined($login{$user}))
{
print "Bitte geben Sie Ihr Passwort ein:\n";
$pass = <STDIN>;
chomp $pass;
}
while ($login{$user} ne $pass)
{
print "Ihre Eingabe war leider falsch. Bitte versuchen Sie es noch einmal:\n";
$pass = <STDIN>;
chomp $pass;
}
if ($login{$user} eq $pass)
{
print "Hallo $user, Ihr Login war erfolgreich!\n";
}
X

Anfängerproblem bei Passwortabfrage...

oesi50
  
Beiträge gesamt: 2315

28. Jan 2005, 18:13
Beitrag # 2 von 3
Beitrag ID: #140267
Bewertung:
(2211 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
hi Anonym,

so geht's:

#!/usr/bin/perl -w

use strict; # sollte man grundsätzlich verwenden

my %login = ("Franz" => "null",
"Peter" => "eins",
"Anna" => "zwei",
"Willi" => "drei",
"Inga" => "vier",
);

my $user; # bei strict müssen Variablen deklariert werden
my $pass;
while (1){ # ewige Schleife, bei Bedarf kann hier die Anzahl der Versuche gezählt werden
print "Bitte geben Sie Ihren Benutzernamen ein:";
$user = <STDIN>;
chomp $user;
print "Bitte geben Sie Ihr Passwort ein:";
$pass = <STDIN>;
chomp $pass;
if(defined $login{$user} && $login{$user} eq $pass){ # passwort und Name sollte immer in einem "Aufwasch" geprüft werden
print "Hallo $user, Ihr Login war erfolgreich!\n";
last; # wenn ok wird die Schleife verlassen
}
else{ # sonst nicht
print "Ihre Eingabe war leider falsch. Bitte versuchen Sie es noch einmal:\n";
}
}


Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)


als Antwort auf: [#140255]
(Dieser Beitrag wurde von oesi50 am 28. Jan 2005, 18:14 geändert)

Anfängerproblem bei Passwortabfrage...

Anonym
Beiträge gesamt: 22827

29. Jan 2005, 12:04
Beitrag # 3 von 3
Beitrag ID: #140344
Bewertung:
(2211 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo Oesi!

Danke für Deine schnelle Hilfe - ich werde Deinen Vorschlag gleich ausprobieren.

Gruss
Senta


als Antwort auf: [#140255]

Aktuell

PDF / Print
kalenderFebruar_kl

Veranstaltungskalender

Hier können Sie Ihre Anlässe eintragen, welche einen Zusammenhang mit den Angeboten von HilfDirSelbst.ch wie z.B. Adobe InDesign, Photoshop, Illustrator, PDF, Pitstop, Affinity, Marketing, SEO, Büro- und Rechtsthemen etc. haben. Die Einträge werden moderiert freigeschaltet. Dies wird werktags üblicherweise innert 24 Stunden erfolgen.

pdf-icon Hier eine kleine Anleitung hinsichtlich Bedeutung der auszufüllenden Formularfelder.

Veranstaltungen
05.02.2021 - 05.11.2021

Digicomp Academy AG, Limmatstrasse 50, 8005 Zürich
Freitag, 05. Feb. 2021, 13.00 Uhr - Freitag, 05. Nov. 2021, 17.00 Uhr

Lehrgang

Bilden Sie sich zum zertifizierten Publishing-Multimedia-Profi aus. Neben Fotografie und Video befassen Sie sich mit der Medienproduktion, digitalen Publikationen und dem Webdesign für Desktop- und mobile Endgeräte.

Preis: CHF 10'500.-
Dauer: 30 Tage (ca. 210 Lektionen) – Unterricht findet jeweils am Freitag von 13 - 19 Uhr und Samstag von 09 - 17 Uhr statt

Ja

Organisator: Digicomp Academy AG

Kontaktinformation: Kundenberater-Team, E-Mailkundenberatung AT digicomp DOT ch

digicomp.ch/d/9PM

Veranstaltungen
12.03.2021 - 16.07.2021

Digicomp Academy AG, Zürich oder virtuell
Freitag, 12. März 2021, 13.00 Uhr - Freitag, 16. Juli 2021, 17.00 Uhr

Lehrgang

Steigen Sie in die Welt des Publishings ein und erlangen Sie die Zertifizierung von publishingNETWORK. Lernen Sie in diesem Lehrgang Druckmedien professionell zu erarbeiten, druckfertige PDFs zu erstellen und CI/CD-Vorgaben umzusetzen.

Preis: CHF 6'300.-
Dauer: 18 Tage (ca. 126 Lektionen) – Unterricht findet jeweils am Freitag von 13 - 19 Uhr und Samstag von 09 - 17 Uhr statt.

Ja

Organisator: Digicomp Academy AG

Kontaktinformation: Kundenberater-Team, E-Mailkundenberatung AT digicomp DOT ch

digicomp.ch/d/9PBAS