Schrift
[thread]7644[/thread]

defined und undef

Leser: 4


<< >> 7 Einträge, 1 Seite
vayu
 2006-01-23 14:18
#62181 #62181
User since
2005-01-13
782 Artikel
BenutzerIn
[default_avatar]
Hallo,

Code: (dl )
1
2
3
4
5
6
    $token = undef;

if(!defined $token) {
print "You are not logged in!\n";
return;
}


obiger code überspringt die if bedingung. Wieso? durch setzen von undef sollte

!defined

doch eigentlich greifen oder?

Danke für Antworten :)

Vayu
Taulmarill
 2006-01-23 14:46
#62182 #62182
User since
2004-02-19
1750 Artikel
BenutzerIn

user image
folgender code gibt bei mir "$foo is undef" aus.
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
use strict;
use warnings;

my $foo = undef;

if ( !defined $foo ) {
print "\$foo is undef\n";
}
else {
print "\$foo is defined\n";
}


benutzt du strict? benutzt du warnings? gib mal $token mit Data::Dumper aus.\n\n

<!--EDIT|Taulmarill|1138020478-->
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B
format_c
 2006-01-23 14:50
#62183 #62183
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
bei mir macht er das was er soll.


Gruß Alex
vayu
 2006-01-23 14:53
#62184 #62184
User since
2005-01-13
782 Artikel
BenutzerIn
[default_avatar]
ARGS.

doofer fehler ... in der logoutfunktion habbich mir nen eigenen token angelegt -.- sorry für den thread. brauch wohl doch ne neue brille ...

siehe beitrag unter den hier :)\n\n

<!--EDIT|vayu|1138021373-->
murphy
 2006-01-23 14:59
#62185 #62185
User since
2004-07-19
1776 Artikel
HausmeisterIn
[Homepage]
user image
[quote=vayu,23.01.2006, 12:53][...]
$token wird in der login funktion gesetzt (habe ich mal weggelassen)

ich will verhindern, dass jemand einen rpc aufruft, wenn sich evtl schon ausgeloggt hat. Deswegen will ich nach dem logout den $token wieder auf undef setzen.[/quote]
... dann solltest Du am besten in der Funktion jira_logout, keine lexikalische Variable mit demselben Namen deklarieren. Sonst ist die Zuweisung nur lokal sichtbar.
When C++ is your hammer, every problem looks like your thumb.
format_c
 2006-01-23 15:02
#62186 #62186
User since
2003-08-04
1706 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Ja du definierst in der Subroutine $token in der lexikalischen Geltungsbereich der Sub jira_logout. Das heißt nicht, dass die Variable unter main dadurch verändert wird. Workaround wäre in der Sub my $token1 = shift . Und folgende Benutzungen von $token auf $token1 ändern.-

Oder das war alles Blödsinn. Dann gleich mit globalen Variablen arbeiten.

Gruß Alex\n\n

<!--EDIT|format_c|1138021495-->
vayu
 2006-01-23 15:04
#62187 #62187
User since
2005-01-13
782 Artikel
BenutzerIn
[default_avatar]
ihr wart schneller als ich :) habe meinen oberen post schon wieder editiert gehabt ... manchmal hab ich einfach tomaten auf den augen und was anderes als Hirnmasse in meinem Schädel. Dank Euch :)\n\n

<!--EDIT|vayu|1138021499-->
<< >> 7 Einträge, 1 Seite



View all threads created 2006-01-23 14:18.