Struppi: problem mit aktualisierung einer logdatei

Beitrag lesen

$ag_last*10*datum username
ich wüsste jetzt nicht wie ich das sonst in einem wert schreiben könnte als in split.

Der split greift ja beim Sternchen '*' und zwischen dem Datum und dem  Namen ist keines.

muss es auch nicht.Es geht nur ums zählen also die zahl zwischen den zwei ** im zusammenhang mit dem usernamen,
der sich authentifiziert hat.

???
Du schreibst das:

my ($ag_last,$count_last,$date_last) = split(/\*/,$logins{$username});

und danach machst du if($xxx ne $date_last) und jetzt behauptest du du würdest nur den 2 Wert nehmen?

Lass dir doch mal die dreit Werte ausgeben, ob die dem entsprechen was du erwartest.

username ohne logins geht glaub ich nicht oder ich weiss nicht wie ich den zusammenhang als wert schreiben soll.

???
username ohne Logins geht nicht - heißt was?
du machst eine HTTP-Authentifizierung?

htaccess auth - ja das tu ich.

Ich seh nirgendwo wo du auf dem Namen zugreifst.

ich nehm mal an mit date_last ,aber die steht ja schon in der Log als alt eintrag,welche ja mit
dem string
my ($ag_last,$count_last,$date_last) = split(/\*/,$logins{$username});
deklariert wird.

Ja sie dird deklariert, aber nicht definiert, das ist ein Unterschied und wird auch in der Fehlermeldung do beschrieben.

Was heißt ich nehm mal an? Was hast du getan um das zu überprüfen? Du solltest Varibeln immer prüfen, da du nie sicher sein kanst das das passiert was du erwartest.

also in der Art:
if(defined $username && exists $logins{$username}){

my ($ag_last,$count_last,$date_last) = split(/\*/,$logins{$username});

die "Fehler ag_last nicht definiert($logins{$username})" unless defined $ag_last;

die "Fehler count nicht definiert($logins{$username})" unless defined $count;

die "Fehler last_date nicht definiert($logins{$username})" unless defined $last_date ;

Dann kommst du auch schneller solchen Fehlern auf die Spur.

Struppi.