我有如下因素PHP代碼和類在不同的文件:Object參數不工作 - > 「通知:未定義的屬性:......」
/CH-ffhs-WEBE-timemanager-控制器/ AnmeldenCtrl.php:行
<?php
include "../ch-ffhs-webe-timemanager-database/Datenbank.php";
include "../ch-ffhs-webe-timemanager-model/Benutzer.php";
$db = new Datenbank();
$benutzer = new Benutzer();
$benutzer->setBenutzername($_POST["bname"]);
$benuName = $benutzer->getBenutzername();
echo $benuName;
$benutzer->setPasswort($_POST["passwd"]);
$pwd = $benutzer->getPasswort();
echo $pwd;
if ($db->loginBenutzer($benutzer)) {
echo "<p>Zugang erlaubt</p>";
} else {
echo "<p>Zugang eigentlich nicht erlaubt ...</p>";
}
?>
/ch-ffhs-webe-timemanager-database/Datenbank.php
<?php
include "../ch-ffhs-webe-timemanager-database/IDatenbank.php";
class Datenbank implements IDatenbank {
public function __construct() {
}
/**
* Diese Methode meldet einen Beunutzer an das
* Zeiterfasssungssystem an
* @param benuter :Benutzer
* @return true falls Login erfolgreich, sonst false
*
* {@inheritDoc}
* @see IDatenbank::loginBenutzer()
*/
public function loginBenutzer($benutzer) {
$passwort = $benutzer->getPasswort; // error
$hashPW = $this->createHash($passwort);
if(password_verify($hashPW, $gespeicherter_hash)) {
return true;
} else {
echo false;
}
}
public function createHash($password) {
return $hash = password_hash($password, PASSWORD_DEFAULT);
}
.
.
}
?>
評論與 「錯誤」 我成爲這樣的錯誤:
Notice: Undefined property: Benutzer::$getPasswort in C:\xampp\htdocs\eclipseWS\TimeManager\application\ch-ffhs-webe-timemanager-database\Datenbank.php on line 24
但是在AnmeldenCtrl.php中調用「$ pwd = $ benutzer-> getPasswort();」工作正常。
任何幫助,請和謝謝...
這裏的最後一堂課
/ch-ffhs-webe-timemanager-model/Benutzer.php
<?php
class Benutzer {
private $benutzername;
private $passwort;
public function __construct() {
}
/**
* benutzername
* @return String
*/
public function getBenutzername(){
return $this->benutzername;
}
/**
* benutzername
* @param String $benutzername
* @return Benutzer
*/
public function setBenutzername($benutzername){
$this->benutzername = $benutzername;
return $this;
}
/**
* passwort
* @return String
*/
public function getPasswort(){
return $this->passwort;
}
/**
* passwort
* @param String $passwort
* @return Benutzer
*/
public function setPasswort($passwort){
$this->passwort = $passwort;
return $this;
}
} ?>
我能解決這個問題。我忘記了函數名 - > $ passwort = $ benutzer-> getPasswort(); ... ups,一個恥辱的錯誤....;) – oxid2178