PHP - Fehler im Code

PHP - Fehler im Code

Ich muss für die Schule eine php-Aufgabe machen.
Hierfür muss das Volumen bzw. die Oberfläche eines Kreiszylinders von php berechnet werden. Es müssen die zwei functionen volumen & oberfläche verwendet werden. Die function volumen soll per Rückgabewert berechnet werden, die function oberfläche mit Referenzparameter. Zudem soll ein Textfeld bestehen. Je nachdem ob man in dieses Textfeld O oder V eingibt soll die Oberfläche oder das Volumen berechnet werden. Es soll nach klicken auf den Submitbutton die eigene Seite neu geladen werden und das Ergebniss angezeigt werden.

Ich finde jedoch leider den Fehler nicht.

Danke für die Hilfe!

Die "Fehlermeldung schon beim ersten Aufruf der Seite:

3."; } else if ($was== „O“ || $was == „o“) { oberflaeche($r,$h,$ober) = $vol; echo „Die Oberfläche des geraden Kreisgekels beträgt $ober mm2.“; } else echo „Keine gültige Berechnungsart gewählt.“; } ?>

Und hier der Code:

$radius=$hoehe=$was="";
function volumen($r,$h,$vol)
{
$vol=(3.141592*$r*$r*$h)/(3);
return $vol;
}

function oberflaeche($r,$h,$ober)
{
$ober=(3.141592*$r*$r)+(3.141592*$r*$h);
return $ober;
}

if (isset($_POST[„r“]) && isset($_POST[„h“]) && isset($_POST[„was“]))
{
$radius=$_POST[„r“];
$hoehe=$_POST[„h“];
$was=$_POST[„was“];

if ($was ==„V“ || $was == „v“)
{
volumen($r,$h,$vol);
echo „Das Volumen des geraden Kreiskegels beträgt $vol mm3.“;
}
else if ($was== „O“ || $was == „o“)
{
oberflaeche($r,$h,$ober) = $vol;
echo „Die Oberfläche des geraden Kreisgekels beträgt $ober mm2.“;
}
else
echo „Keine gültige Berechnungsart gewählt.“;
}
?>

Oberfläche und Volumen
des geradem Kreiskegels

Radius [mm]:Höhe [mm]:open_mouth:/V:

… mehr auf http://www.wer-weiss-was.de/app/query/send?queryid=1…

Stimmt, allerdings hast Du noch nix gemacht, das ist quasi noch Lehrermaterial !!!

Deswegen gibts was ganz neues um zu zeigen wie es geht.

Kein Tabellen Layout .

dafür CSS und ein anständiges Formular und XHTML 1.0 Strict .

Es wird gezeigt wie man by reference und mit return value arbeitet .

Also nur zum gucken und dann versuchen das von deinem Lehrer zu korriegieren.

Ach Ja dein Textfeld hab ich in ein Select Feld gewandelt.

<?php header("Content-Type: text/html; charset=utf-8");
echo "<?xml version=\"1.0\" ?>";

?>

Hausaufgaben PHP (return value | by reference)
label {clear:both; display:block ; width :100px; float:left; }
input {float:left;}
form {padding:30px;}
h2 {font-size:16pt; font-weight:bold;}
.xhtmlcheck {font-size:10pt; }
.errors {color:#FF3300;}
p {height:30px;}
Oberfläche und Volumen des geradem Kreiskegels

<?php /* error Anzeige */
$error = array(); /\* werte nicht vorhanden \*/ $werteok = false; /\* Berechnungsvariablen \*/ $radius=$hoehe=$was=$oberflaeche=""; /\* Formular brauch diese Felder \*/ if (isset($\_POST["r"]) && isset($\_POST["h"]) && isset($\_POST["was"])) { /\* werte vorhanden \*/ $werteok = true; /\* vorhandene Daten kopieren \*/ $radius=$\_POST["r"]; $hoehe=$\_POST["h"]; /\* kleine Buchstaben in grosse wandeln \*/ $was=strtoupper($\_POST["was"]); } /\* Wichtige Daten für die Berechnung leer \*/ if (!(floatval($radius ) \> 0) ) { /\* Es fehlen Daten für die Berechnungsgrundlage \*/ $error[] = "Radius fehlt."; /\* werte nicht vorhanden \*/ $werteok = false; } if (!(floatval( $hoehe ) \> 0) ) { /\* Es fehlen Daten für die Berechnungsgrundlage \*/ $error[] = "Höhe fehlt."; /\* werte nicht vorhanden \*/ $werteok = false; } /\* Werte für Berechnungen vorhanden \*/ if ($werteok) { /\* Eingabe vom User prüfen \*/ switch ( $was ) { /\* Oberfläche berechnen \*/ case "O": oberflaeche ( $radius,$hoehe,$oberflaeche ); /\* Oberfläche ausgeben \*/ echo " Die Oberfläche des geraden Kreisgekels beträgt ".$oberflaeche." mm2. "; /\* User eingabe auswertung verlassen \*/ break; case "V": $volumen = volumen($radius,$hoehe); echo " Das Volumen des geraden Kreiskegels beträgt ".$volumen." mm3. "; /\* User Eingabe Auswertung verlassen \*/ break; /\* User hat keine logische Eingabe gemacht. \*/ default: $error[] = "Keine Berechnungsart gewählt"; } } /\* alle errors ausgeben \*/ echo (count($error)\>0 ? " ".implode(" ; ",$error)." " : ""); /\* Formular Ausgeben \*/ ?\> Werte Radius [mm]: Höhe [mm]: Optionen O/V: "\> <?php /* optionen erst eintrag */
echo ($was=="" ? "Bitte wählen" : "".($was == "O" ? "Oberfläche" : "Volumen")); ?\><?php /* option einträge , nur wenn nicht gewählt */
echo ($was != "V" ? "Volumen" : "");
echo ($was != "O" ? "Oberfläche" : "");
?>

This document was successfully checked as XHTML 1.0 Strict!


<?php /* functionen */
function volumen ($radius,$hoehe) {
$volumen=(3.141592*$radius*$radius*$hoehe)/(3);
return $volumen;
}
function oberflaeche ( $radius,$hoehe,&$oberflaeche ) {
$oberflaeche=(3.141592*$radius*$radius)+(3.141592*$radius*$hoehe);
}
?>

Stimmt, allerdings hast Du noch nix gemacht, das ist quasi
noch Lehrermaterial !!!

Deswegen gibts was ganz neues um zu zeigen wie es geht.

Kein Tabellen Layout .

dafür CSS und ein anständiges Formular und XHTML 1.0 Strict .

hmm. hmm.

\pi waere m.e. wichtig gewesen.
http://php.net/manual/en/function.pi.php

und ein hinweis, warum sein code nicht laeuft.

Moin moin,

dafür CSS und ein anständiges Formular und XHTML 1.0 Strict .

hmm. hmm.

hmm
hmm

\pi waere m.e. wichtig gewesen.
http://php.net/manual/en/function.pi.php

Ja und ist klar, wer keine Ahnung von HTML und Semantik hat dem ist natürlich eine unwichtige funktion ganz wichtig, weil klar berechnen wir immer auf 1000 kommastellen.

und ein hinweis, warum sein code nicht laeuft.

1000 hinweise warum der code nie funktionieren wird sind unnötig.
Es sind Hausaufgaben , die sollte man vorher erledigen und dann fragen.

Moin moin

Ich finde jedoch leider den Fehler nicht.

Danke für die Hilfe!

Die "Fehlermeldung schon beim ersten Aufruf der Seite:

3."; } else if ($was== „O“ || $was == „o“) {
oberflaeche($r,$h,$ober) = $vol; echo „Die Oberfläche des
geraden Kreisgekels beträgt $ober mm2.“; } else echo „Keine
gültige Berechnungsart gewählt.“; } ?>

woher auch immer du die Fehlermeldung bekommst, ich hab da keine Fehlermeldung , nur ist das ganze eh schrott von deinem Lehrer also hör im Unterricht zu .