---
title: "Någon som vet?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/perl-ruby/19056-någon-som-vet"
topic: "Perl & Ruby"
topic_url: "https://www.webforum.nu/amne/perl-ruby"
author: "nordan"
published: "2000-06-14T13:01:00.000Z"
updated: "2000-06-14T20:05:00.000Z"
replies: 3
views: 454
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/perl-ruby/19056-någon-som-vet"
---

# Någon som vet?

## #1 — nordan, 2000-06-14T13:01Z

Hej jag har ett lösenords script här som såklart inte funkar! 
      Och jag kan inte hitta på vad det är som är fel? 
      Jag menar det är ett säkert script eftersom man inte kan logga in fast men har 
      rätt lösenord \*skrattar\* 
      Felet är att den inte går till 
      if ($status eq "OK"){ 
      print "HEJ "; 
      } 
      När jag har skrivigt in rätt lösenord! 
      Min lösenords fil ser ut så här 
      anvnamn&&lösen 
      Någon som kan tipsa om vad jag har gjort för fel? 

    

      print "Content-type: text/html\\n\\n"; 
      read (STDIN, $forminfo, $ENV{'CONTENT_LENGTH'}); 
      $forminfo =\~ tr/+/ /; 
      $forminfo =\~ s/%(..)/pack("c",hex($1))/ge; 
      @par = split(/&/,$forminfo); 
      foreach $a (@par){ ($ruta, $text) = split(/=/,$a); 
      $INFO{$ruta} = $text; 
      } 
      $anvnamn = $INFO{'namn'}; 
      $anvpass = $INFO{'password'}; 

      open (FIL, "password.txt" ); 

      @listan = \<FIL\>; 

      close(FIL); 
      foreach $line (@listan) 
      { 
      ($loggname, $loggpass) = split(/&&/, $line); 
      $status="OK" if($loggname eq "$anvnamn" && $loggpass eq "$anvpass") 
      } 
      if ($status eq "OK"){ 
      print "HEJ "; 
      exit; 
      } 
      print "NÄ DU ";

Permalänk: https://www.webforum.nu/p/19056

## #2 — Bamse, 2000-06-14T14:16Z

Jag är väl inte någon expert på detta men exit; skall väl stå sist....
och måste du inte ha elsif eller något också...

> if ($status eq "OK"){ 
> print "HEJ "; 
> exit; 
> } 
> print "NÄ DU ";

Permalänk: https://www.webforum.nu/p/340758

## #3 — emission, 2000-06-14T14:58Z

Använder du POST i formuläret?

Permalänk: https://www.webforum.nu/p/340759

## #4 — demo, 2000-06-14T20:05Z

Hej!

Prova detta lilla kodexempel.

Gör ett formulär med ett lösenordsfält, som i detta exempel skall ha namnet 'password'.

Filen där lösenordet ligger skall heta password.txt.

Form action skall vara satt till GET.

Detta kodexempel borde fungera.
//Demo

$forminfo=$ENV{'QUERY_STRING'}; 
$forminfo=\~tr/+/ /; 
$forminfo=\~s/%(..)/pack("c",hex($1))/ge; 

@par=split(/&/,$forminfo); 

foreach $a (@par){ 
($ruta, $text)=split(/=/,$a); 
$INFO{$ruta}=$text; 
} 

open(FILE,"password.txt");
$losen=\<FILE\>;
close FILE;

\# Kollar om lösenordet är rätt?
if($losen eq $INFO{'password'}){

print "Lösenordet är rätt";
exit;
}

Permalänk: https://www.webforum.nu/p/340760

---

Tråden på webben: https://www.webforum.nu/amne/perl-ruby/19056-någon-som-vet
