Hallo,
habe gesucht und bin fündig geworden...
na prima!
<script type="text/javascript">
<!--
Die Auskommentierung von Javascript mag vor zehn Jahren noch angebracht gewesen sein; heute ist sie es gewiss nicht mehr. Browser wie Netscape 4 dürften in freier Wildbahn kaum noch anzutreffen sein.
function rechnen()
{
brutto=String(document.DD_form.brutto.value).replace(",", ".");
RAB_DD_1=String(document.DD_form.RAB_DD_1.value).replace(",", ".");
RAB_DD_2=String(document.DD_form.RAB_DD_2.value).replace(",", ".");
var Wert = netto_DD=brutto*((100-RAB_DD_1)/100)*((100-RAB_DD_2)/100);
document.DD_form.netto_DD.value=String(Wert.toFixed(2)).replace(".", ",");}
Die expliziten Umwandlungen in Strings sind unnötig; wenn Javascript an einer Stelle meint, einen String zu benötigen, werden die Argumente automatisch umgewandelt.
Und die diversen replace() ... naja, wenn jemand darauf besteht, ein Komma anstatt eines Dezimalpunkts eingeben zu dürfen, okay. Immerhin funktioniert die Geschichte ja auch dann noch tadellos, wenn ich die Werte von vornherein mit Dezimalpunkt eingebe. Ich mag es nicht, wenn mir (wie z.B. bei ebay oder beim Postbank-Onlinebanking) die Verwendung eines Kommas vorgeschrieben wird.
Die Berechnung funktioniert schon mal super...
Würde ich anhand des Codes auch vermuten.
nun stehe ich aber vor dem Problem, daß ich diese berechneten Werte per Post auch noch weiter an das nächste PHP senden möchte um diese Werte in die mysql-DB zu speichern...
Das passiert doch ganz automatisch, denn alle Eingabefelder, die der obige Code anspricht, liegen in demselben Formular. Wenn das abgeschickt wird, ist das berechnete Feld netto_DD zwangsläufig dabei. Du solltest es aber serverseitig dennoch ignorieren, weil (wie schon erwähnt) der User auch irgendeinen Mist hineinschreiben kann, oder weil das Feld leer sein könnte, weil Javascript nicht ausgeführt wird.
<form name="alles_uebernehmen" aktion="nächstes.php">
...
<form name="DD_form">
...
Ein Formular in einem Formular? Wie könnte ich das lösen?
Warum die Schachtelung? Wozu brauchst du ein zweites Formular?
Ciao,
Martin