Cheatah: $betragRund = sprintf("%.2f", $betrag); bei CGI?

Beitrag lesen

Hi,

$betragRund = sprintf("%.2f", $betrag);
Benutze ich printf verrutscht in meiner HTML-Ausgabe eine Zahl links oben in die Ecke und mein
$betragRund ist einfach immer nur eins.

printf macht eine Ausgabe und gibt, wie jede geglückte Aktion, einen wahren Wert zurück, also 1. Genauso wird nach "my $temp = print 'bla';" in $temp der Wert 1 stehen.

use strict;
use CGI qw(:standard);

Sehr schön!

my($betrag, [...]
my $betrag [...]

Das hingegen ist etwas zu viel des Guten :-) Bitte nur ein 'my' pro Variable und Scope.

my $betrag = param('betrag');

Übrigens ist $betrag undef, wenn kein entsprechender Parameter an das CGI-Script übergeben wurde. Besser wäre in solchen Fällen:

my $betrag = param('betrag') || 0;

$wahl = param('devisen');

Noch'n übrigens: Du kannst auch mehrere Variablen gleichzeitig deklarieren und füllen, inklusive Defaultwerte:

my ($betrag, $wahl, $eurokurs) = (param('betrag')||0, param('devisen')||1, 1.95583);

Cheatah