Hi,
du steckst ja noch voll am Anfang...
Besonderes praekaer und schnellstens wegzumachen ist der Code:
$pfad="C:" . "\" . "wampp2" . "\" . "htdocs" . "\" . "user" . "\" . $user . "\" . "id.dat";
$sid=$FORM{'Session'};
Was passiert denn bitteschoen, wenn jemand als uservariable (egal ob ueber GET oder POST) sowas wie ';delete C:\*.*' uebergibt?
(Da haette uebrigens das 'use CGI'-Gefummle der beiden anderen Poster
dich nicht vor gerettet. Aber wie du Variablen aus dem Netz parst war ja auch nicht deine Hauptfrage, bzw. sollte nicht dein Problem sein.
Also ist die Antwort 'use CGI' eigentlich nicht sehr hilfreich...)
Ich wuerde dir zwei Alternativen empfehlen:
1. Benutze htaccess !
Wenn du das machst, kannst du dir das ganze Session-geschmarre
sparen und einfach nach der ENV-Variable
REMOTE_USER
pruefen.
Die .htaccess packst du in dem CGI-Verzeichnis mit dem Skript.
Zu .htaccess gibt es hier auf Teamone / selfaktuell eine sehr gute
Anleitung!
2. Ich hab da mal ein Modul geschrieben ...
Digest::UserSID
Das macht genau das was du da willst: Es vergibt und verwaltet
Sitzungs-Ids.
Du findest das Modul auf CPAN.
Ansonsten gibt es unzaehlige weitere Perlmodule, die dir helfen.
Such mal nicht unbedingt nur nach einer Hilfe fuer deinen obigen Code, sondern nach Loesungen wie man spezielle Userlogins machen kann.
Ciao,
Wolfgang