Berechnung

DarkManX

Erfahrenes Mitglied
Hallo,

bin nicht so JS begabt, habe aber trotzdem was versucht, was nicht klappt. Ich weiss nciht was daran falsch ist. Hoffe ihr könnt mir helfen

PHP:
print '<script type="text/javascript">
<!-- function berechnung_'.$c.'() {
    document.form_'.$c.'.kosten.value = document.'.$c.'.menge.value * '.$kosten.';
} //-->
</script>

<form name="form_'.$c.'" method="post" action="index.php?tmp=markt"><tr>
....
<td align="center"><input onchange="berechnung_'.$c.'()" size="8" type="text" name="menge" value="1"></td>
<td align="center"><input size="8" type="text" name="kosten" readonly></td>';


Und zwar soll ins Input "Kosten" das hingeschrieben werden, was errechnet wurde ("Menge" * $kosten), wenn "Menge" verändert wird. Klappt aber nicht. "Kosten" wird gar nciht verändert.

mfg
DmX
 
PHP:
print '<script type="text/javascript"><!--
  	function berechnung_'.$c.'() {
 		document.form_'.$c.'.kosten.value = Number(document.form_'.$c.'.menge.value) * '.$kosten.';
  	}
  //--></script>
  
  <form name="form_'.$c.'" method="post" action="index.php?tmp=markt"><tr>
  ....
  <td align="center"><input onkeyup="berechnung_'.$c.'()" size="8" type="text" name="menge" value="1"></td>
  <td align="center"><input size="8" type="text" name="kosten" readonly></td>';
Das nächte mal poste das Ganze bitte in besser lesbarer Form, also nur die Ausgabe nach dem prasen. Hier ist nämlch das JavaScript und nicht das PHP-Forum, falls es dir entgangen ist und es gibt hier durchaus Leute, die kein PHP können bzw. keine Lust haben den JavaScript-Prat aus den Anführungszeichen zu pellen.

Aber genug beschwert: Dein einziger Fehler war, dass du 'document.'.$c.'.menge.value' statt 'document.form_'.$c.'.menge.value' geschrieben hattest.
 
Zuletzt bearbeitet:
Ähm,

wollte jetzt die Rechnung ein bisschen verändern, klappt wieder nicht. :(

PHP:
<script type="text/javascript"><!--
function berechnung_1() {

var menge  = Number(document.form_1.menge.value);
var stadt  = 20;
var kosten = 0;

while(stadt >= $menge) {
kosten = 500 / stadt + kosten;
stadt = stadt-1; }

document.form_1.kosten.value = kosten;
}
//--></script>

Hoffe ihr könnt mir helfen & sorry für Doppelposting

dmx
 
Hi,

den einzigen Fehler, den ich entdecken kann - in der while-Bedingung hast du $menge statt
menge stehen.

Weiterhin solltest du vermeiden, dass die Variable menge den Wert Null annehmen kann,
da sonst auch stadt zu Null wird und somit eine Division durch Null erfolgt!

Ciao
Quaese
 

Neue Beiträge

Zurück