gutefrage.net, die Ratgeber Community
Login   |  Registrieren   |  Forum |  Richtlinien & FAQ

Wer findet den Fehler in diesem PHP Skript?

gefragt von kreativkekskreativkeks am 27.03.2009 um 12:07 Uhr

<html> <body> <?php class bruch { private $zaehler; private $nenner;

public function __construct($z,$n) //$z=&#039;1&#039;, $n=&#039;2&#039;????-help i need somebody
{
    $this-&gt;$zaehler = $z;
    $this-&gt;$nenner = $n;

}

public function aus()
{
    return $this-&gt;zaehler . &quot;/&quot; . $this-&gt;nenner;

}

public function mult($a)

{
    $erg = new bruch(0,0);
    $erg-&gt;zaehler = $this-&gt;zaehler * $a-&gt;zaehler;
    $erg-&gt;nenner = $this-&gt;nenner * $a-&gt;nenner;
    return $erg;
}

}

$x = new bruch(3,7); $y = new bruch(4,5);

echo $x->aus() . " * " .$y->aus() . " = " . $x->mult($y)->aus();

?> </body>

</html>

Meldung ist Fatal error siehe Bilder, lasse ich bei construct die Unterstriche weg, wird wenigstens ein Bruch ausgegeben, aber ohne Inhalt.. Danke, clueless_newbie bzw. Kreativkeks


Bild/er:

Bild


Frage beantworten

Hier finden Sie weitere Fragen zu den Themen:

php x 493 webprogrammierung x 29

Complex
beantwortet von Complex am 27. März 2009 12:16
2x
Die Antwort ist hilfreich? Dann klick mich!

Der Fehler lautet nicht Fatal Error, sondern "Cannot access empty property in blablabla on line 11". Also ist irgendwas in Zeile 11 falsch, dort steht:

$this->$zaehler = $z;

An sämtlichen anderen Stellen im Skript steht jedoch:

$this->zaehler = irgendwas

Ich vermute daher, dass das $-Zeichen weg muss, genauso auch in der Zeile drunter. Ich kann mich aber auch irren, ich habe nie mit PHP gearbeitet. Aber du siehst, dass man trotzdem den Fehler finden kann, wenn man nur richtig liest! Man lernt programmieren nur duch trial-and-error, d.h. du solltest dir die Mühe machen solche Fehler selbst zu finden, sonst lernst du rein gar nichts!

Kommentar von waquo am 27. März 2009 12:20

Richtig. Bei $this->$zaehler ist der zweite Dollar zuviel. Bei den anderen $this->$dingens auch.



Verwandte Fragen

Verwandte Fragen

Noch nicht die richtige Antwort? Dann hier in allen Fragen und Tipps suchen:




Die unter gutefrage.net angebotenen Dienste und Ratgeber Inhalte werden nicht geprüft. Die Richtigkeit der Inhalte wird nicht gewährleistet. Bitte lesen Sie hierzu auch unsere Rechtlichen Hinweise.