Rechenskript für Zinsen, Zinseszins und Tageszins

marcap

Mitglied
Hi, ich bin Php anfänger und wollte ein Programm schreiben, in dem man auswählt was man berechnen möchte: Tageszinsen, Jahreszinsen oder Zinseszins! dann gibt man die restlichen daten ins Formular ein, fertig is es!

Allerdings habe ich irgendwelche Probleme, deren beseitigung mein jetztiges Wissen übersteigen....

Wär cool wenn ihr mir sagt was wo falsch ist!

Der Code der zinsen.php Datei
PHP:
<?php
$Zinssatz = $_GET["Zinssatz"];
define("teiler", "100");
define("addition", "1");
$Zinssatz2 = $Zinssatz / teiler + addition;
$Kapital = $_GET["Kapital"];
define("tagesteiler", "360");
$Tage = $_GET["Tage"] / tagesteiler;
$Jahre = $_GET["Jahre"];

if ($_GET["Rechenart"] == "Tageszinsen") {
$Tageszinsen = $Kaptial * $Tage * $Zinssatz2 //Tageszinsen
echo $Tageszinsen;
}

if ($_GET["Rechenart"] == "Jahreszinsen") {
$Jahreszinsen = $Kapital * $Jahre * $Zinssatz //Jahreszinsen
echo $Jahreszinsen;
}
else {
echo "Ihre Angaben sind nicht exakt bitte wählen Sie aus was Sie Berechnen möchten!";
}
if ($_GET["Rechenart"] == "Zinseszinsberechnung") {
$endkapital = $Kapital * pow($Zinssatz, $Jahre), //Zinseszinsberechnung!
echo $endkapital;
}
else {
echo "Ihre Angaben sind nicht exakt bitte wählen Sie aus was Sie Berechnen möchten!";
}
?>

Hier der Code des Formulars zinsen.htm

PHP:
<html>
<head>

</head>

<body>
<center><h4>Marcap's Rechner: Mehrwertsteuer und Skontoabzug</h4></center><p>
Bei nichtgebrauch der Funktion Eingabefeld bitte frei lassen!<br>
Bitte unbedingt als Trennzeichen den PUNKT(.) zu verwenden nicht das KOMMA(,)
<form action="zinsen.php" method="get">
	<select name="Rechenart" size="1"> Bitte gebt an was ihr berechnen wollt!
		<option>Tageszinsen</option>
		<option>Jahreszinsen</option>
		<option>Zinseszinsberechnung</option>
	</select><p>
	<input name="Kapital" type="text">Anfangskapital<br>
	<input name="Tage" type="text">Tage (nur bei Tageszinsen angeben)<br>
	<input name="Jahre" type="text">Jahre (nicht bei Tageszinsen angeben<br>
	<input name="Zinssatz" type="text">Zinssatz in % <p>
	<input type="submit">
	
		
	</form>
</body>
</html>

Vielen dank für eure Hilfe

Marcap
 
ok sry vergessen: Da kommt immer

Parse error: parse error, unexpected T_ECHO in /home/marcadbp/www.marcap.de/code/zinsen.php on line 15
 
Du hast irgendwie überall Semikolons vergessen!
Wie hier z.B.:
PHP:
$Tageszinsen = $Kaptial * $Tage * $Zinssatz2 // da muss ein Semikolon hinter
und hier:
PHP:
$Jahreszinsen = $Kapital * $Jahre * $Zinssatz // hier auch
und hier is nur ein Komma:
PHP:
$endkapital = $Kapital * pow($Zinssatz, $Jahre), // <--schau schau

greetz
daddz
 
Versuchs doch mal so mit "elseif":
PHP:
if ($_GET["Rechenart"] == "Tageszinsen") {
$Tageszinsen = $Kaptial * $Tage * $Zinssatz2 //Tageszinsen
echo $Tageszinsen;
}

elseif ($_GET["Rechenart"] == "Jahreszinsen") {
$Jahreszinsen = $Kapital * $Jahre * $Zinssatz //Jahreszinsen
echo $Jahreszinsen;
}

elseif ($_GET["Rechenart"] == "Zinseszinsberechnung") {
$endkapital = $Kapital * pow($Zinssatz, $Jahre), //Zinseszinsberechnung!
echo $endkapital;
}
else {
echo "Ihre Angaben sind nicht exakt bitte wählen Sie aus was Sie Berechnen möchten!";
}
?>

Oder am besten mit "switch" :
PHP:
switch($_GET["Rechenart"]) {
    case "Tageszinsen":
        $Tageszinsen = $Kaptial * $Tage * $Zinssatz2; //Tageszinsen
        echo $Tageszinsen;
        break;
    case "Jahreszinsen":
        $Jahreszinsen = $Kapital * $Jahre * $Zinssatz; //Jahreszinsen
        echo $Jahreszinsen;
        break;
    case "Zinseszinsberechnung":
        $endkapital = $Kapital * pow($Zinssatz, $Jahre); //Zinseszinsberechnung!
        echo $endkapital;
        break;  
    default:
        echo "Ihre Angaben sind nicht exakt bitte wählen Sie aus was Sie Berechnen möchten!";
        break;
}

Mit "switch" ist es eigentlich die "elegantere" Lösung!

greetz
daddz
 
Zuletzt bearbeitet:
Oh danke, kannst du mir kurz die Switch/Case funktion erklären, also wie man die einsetzt, denn ich will mich ja verbessern....
 
Zurück