Forum Doku Wiki Blog

Forumsarchiv 2002, August
Was heisst das?

archivierte Beiträge lesen

  1. (CGI) Was heisst das? von Alain, 19. 08. 2002, 12:34

Was heisst das?

Der folgende Beitrag wurde am 19. 08. 2002, 12:34 Uhr von Alain veröffentlicht.

hallo,

Ich habe bezüglich einem cgi folgende frage,
was bedeutet eigentlich dieser code?

($count_last > $abusecount && length($username) > 3)


versteh diesen satz nicht?

würde das

($count_last > $abusecount )

nicht genügen?

gruss Alain

...guten appetit

Was heisst das?

Der folgende Beitrag wurde am 19. 08. 2002, 12:39 Uhr von Bjoern veröffentlicht.

hallo,

> Ich habe bezüglich einem cgi folgende frage,
> was bedeutet eigentlich dieser code?

> ($count_last > $abusecount && length($username) > 3)

es werden 2 überprüfungen gemacht
 1) $count_last > abusecount
 2) länge vom $username > 3

'&&' heisst, beides muss wahr sein.

grüssle
bjoern

Was heisst das?

Der folgende Beitrag wurde am 19. 08. 2002, 12:40 Uhr von MM veröffentlicht.

Hallo.
Nein das würde nicht genügen.

In dieser Bediengung müssen nämlich 2 Bedingungen erfüllt sein.

1.) $count_last > $abusecount
   $count_last muss größer sein als $abusecount
   UND
2.) length($username) > 3
   Die Länge von $username muss größer als 3 sein.

Erst wenn diese beiden Bedingungen erfüllt sind, wird das ausgeführt, was danach kommt ...


LG,
MM

Was heisst das?

Der folgende Beitrag wurde am 19. 08. 2002, 16:38 Uhr von Michael Schröpl veröffentlicht.

Hi,

> ($count_last > $abusecount && length($username) > 3)

wie sind eigentlich die Operator-Prioritäten in dieser Sprache definiert?

Den angegebenen Ausdruck würde ich schon aus Lesbarkeitsgründen heftiger
klammern wollen - wer weiß, ob nicht das "&&" am Ende die höchste Priorität
hat ...

> würde das
> ($count_last > $abusecount )
> nicht genügen?

Um was zu erreichen? Aufgabenstellung, bitte.

Viele Grüße
      Michael

Was heisst das?

Der folgende Beitrag wurde am 19. 08. 2002, 16:55 Uhr von Alain veröffentlicht.

> Hi,
hallo,
Danke erstmal an Dich und die anderen für die antwort,

> > ($count_last > $abusecount && length($username) > 3)

> wie sind eigentlich die Operator-Prioritäten in dieser Sprache definiert?
Operator-Prioritäten?
meinst du das?
$abusecount =          6;
$date       = `date`;
$date_today = join( " ", (split(" ",$date)) [1,2] );
($ip_last,$count_last,$date_last) = split(/\*/,$logins{$username});
if ($date_last ne $date_today)
{
$count_last=0;
}

$logins{$username} = ("ip_now*$count_last*$date_today");
    dbmclose(logins);
    flock(logins,8) if ($doflocks);

> Den angegebenen Ausdruck würde ich schon aus Lesbarkeitsgründen heftiger
> klammern wollen - wer weiß, ob nicht das "&&" am Ende die höchste Priorität
> hat ...
wie einklammern?
was sollte sonst dort stehen?
> > würde das
> > ($count_last > $abusecount )
> > nicht genügen?

> Um was zu erreichen? Aufgabenstellung, bitte.
gruss vom Alain
> Viele Grüße
>       Michael
nteressier1

Was heisst das?

Der folgende Beitrag wurde am 19. 08. 2002, 17:49 Uhr von Sönke Tesch veröffentlicht.

> > > ($count_last > $abusecount && length($username) > 3)

> > wie sind eigentlich die Operator-Prioritäten in dieser Sprache definiert?
> Operator-Prioritäten?

Aus der Grundschule auch bekannt als Punkt vor Strichrechung.

  4 + 3 * 2

ist dementsprechend 10 (3*2=6; +4=10) und nicht 14 (4+3=7; *2=14), weil das Mal vor dem Plus gerechnet wird.

Bei Deiner obigen Befehlszeile wäre die Frage genauso zu stellen, welcher der zwei/drei Operatoren soll zuerst ausgewertet werden? Die beiden Größer-als außen oder das Und in der Mitte. Auch hier ist das ein himmelweiter Unterschied.

> > Den angegebenen Ausdruck würde ich schon aus Lesbarkeitsgründen heftiger
> > klammern wollen - wer weiß, ob nicht das "&&" am Ende die höchste Priorität
> > hat ...
> wie einklammern?

(4+3)*2 ist etwas anderes als 4+(3*2). Mit Klammern ändert man die Prioritäten bei der Auswertung.

> > > würde das
> > > ($count_last > $abusecount )
> > > nicht genügen?

Wenn Dich nicht interessiert, ob der Nutzername länger als drei Zeichen ist, ja.

Gruß,
  soenk.e

Was heisst das?

Der folgende Beitrag wurde am 19. 08. 2002, 21:21 Uhr von Alain veröffentlicht.

> > > > ($count_last > $abusecount && length($username) > 3)
hallo soenk.e,
> Aus der Grundschule auch bekannt als Punkt vor Strichrechung.

>   4 + 3 * 2

> ist dementsprechend 10 (3*2=6; +4=10) und nicht 14 (4+3=7; *2=14),
weil das Mal vor dem Plus gerechnet wird.

ok verstanden,aber wie sieht das im obigen beispiel aus
in formel betrachtet? ---> ein beispiel?


> Bei Deiner obigen Befehlszeile wäre die Frage genauso zu stellen,
welcher der zwei/drei Operatoren soll zuerst ausgewertet werden?
Die beiden Größer-als außen oder das Und in der Mitte.

grösser als aussen?
entschuldige,aber ich versteh das nicht ganz .

Auch hier ist das ein himmelweiter Unterschied.

> (4+3)*2 ist etwas anderes als 4+(3*2).
Mit Klammern ändert man die Prioritäten bei der Auswertung.


> Wenn Dich nicht interessiert,
ob der Nutzername länger als drei Zeichen ist, ja.

Gruss Alain

> Gruß,
>   soenk.e
ount )

Was heisst das?

Der folgende Beitrag wurde am 19. 08. 2002, 21:38 Uhr von Christoph Schnauß veröffentlicht.

hi Alain,

> aber wie sieht das im obigen beispiel aus
> in formel betrachtet? ---> ein beispiel?
möglich wäre so etwas:
(($count_last > $abusecount) && (length($username) > 3))
um es ganz deutlich zu machen

> grösser als aussen?
> entschuldige,aber ich versteh das nicht ganz .
"größer als" bezieht sich auf den Operator ">", das ist das "größer-als-Zeichen". Und es steht "außen" in deinem Beispiel. Wenn man sich über die Prioritäten nicht ganz klar ist, also nicht genau weiß, ob erst "&&" oder erst ">" befolgt wird, sollte man eben Klammern setzen

Grüße aus Berlin

Christoph S.

Was heisst das?

Der folgende Beitrag wurde am 20. 08. 2002, 09:03 Uhr von Sönke Tesch veröffentlicht.

> > aber wie sieht das im obigen beispiel aus
> > in formel betrachtet? ---> ein beispiel?
> möglich wäre so etwas:
> (($count_last > $abusecount) && (length($username) > 3))
> um es ganz deutlich zu machen

Womit wir dann wieder bei Michaels Antwortfrage sind: Diese Reihenfolge ist abhängig von der verwendeten Sprache, die Du allerdings nicht angegeben hattest.
Für PHP ist das zum Beispiel unter http://www.php.net/manual/de/language.operators.php#language.operators.precedence beschrieben, für Perl unter http://selfhtml.teamone.de/cgiperl/sprache/operatoren.htm#rangfolge (was ist eigentlich http://aktuell.de.selfhtml.org/archiv/doku/6.1/tecf.htm#a8 für eine Leiche?), Javascript http://selfhtml.teamone.de/javascript/sprache/operatoren.htm#rangfolge.

Gruß,
  soenk.e

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4