[EasyLinux-Suse] rätselhaftes Problem mit php und html

Peter Steffinger trommelpeter at web.de
So Feb 6 23:52:28 CET 2011


Hallo Liste

Vielleicht habe ich Glück und es kennt sich zufällig jemand aus hier.

Ich habe zwei Dateien:
p218.html (Eingabeformular)
p218b.php (Auswertungsprogramm)

Beide habe ich nach /srv/www/htdocs/k2/ kopiert

Anschließend rufe ich 
http://localhost/k2/p218.html
auf.
Dort trage ich 120 bei den Litern ein, und N bei der Sorte.

Nach absenden (submit) erscheint die Seite
http://localhost/k2/p218b.php
und gibt folgendes Aus:
"Liter Normal kosten 162 €"

Laut Beschreibung soll aber folgendes Rauskommen:
120 Liter Normal kosten 158.76 €

Ich bin die Syntax jetzt eine Stunde lang rauf und runter immer wieder, aber 
habe nichts gefunden was die falsche Ausgabe erklären könnte.


Und hier meine Beiden Dateien:

p218.html
========

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
	<title>P218</title>
	<meta http-equiv="content-type" content="text/html;charset=utf-8" />
	<meta name="generator" content="Geany 0.18.1" />
</head>

<body>
<form action = "p218b.php" method = "post">
	<p>Bitte geben Sie Menge und Sorte ein</p>
	<p><input name = "liter" /> Menge in Liter</p>
	<p><input name = "sorte" /> Sorte (S oder N)</p>
	<p><input type = "submit" />
	<input type = "reset" /></p>
</form>	
</body>
</html>


UND!


p218b.php
=========

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
	<title>P218b</title>
	<meta http-equiv="content-type" content="text/html;charset=utf-8" />
	<meta name="generator" content="Geany 0.18.1" />
</head>

<body>
<?php
	if ($_POST["sorte"] == "N")
	{
		$zahlung = $_POST["liter"] * 1.35;
		$text = "Normal";
	}
	else
	{
		$zahlung = $_POST["liter"] * 1.40;
		$text = "Super";
	}
	
	if ($POST["liter"] >= 100)
		$zahlung = $zahlung * 0.98;
	echo $POST["liter"] . " Liter $text kosten $zahlung &euro;";
?>	
</body>
</html>


Vielleicht sieht ja jemand einen Syntaxfehler, den ich nicht gesehen habe.
Vielen Dank im Vorraus.


Viele Grüße
Peter




-- 
########################################################################
Kernel: Linux 2.6.34.7-0.5-desktop i686 ; Distribution: openSUSE 11.3 (i586)
             KDE:  4.4.4 (KDE 4.4.4) "release 3"
########################################################################


Mehr Informationen über die Mailingliste Suse