PHP OOP,未捕获的错误:调用一个成员函数setAuthor()的字符串
我使用的PHP版本7和我总是得到这个错误,当我创造一个新闻报道:PHP OOP,未捕获的错误:调用一个成员函数setAuthor()的字符串
Fatal error: Uncaught Error: Call to a member function setAuthor() on string in D:\xampp\htdocs\entwicklung\tools\adminlogin\lib\mod\news\newsForm.php:14 Stack trace: #0 {main} thrown in D:\xampp\htdocs\entwicklung\tools\adminlogin\lib\mod\news\newsForm.php on line 14
在这里,我创造我的对象而将节省的文章在我的数据库:
if(isset($_POST["publish"]))
{
$news = new News();
$title = $news->setTitle($db, $_POST["ueberschrift"]);
$news = $news->setNews($db, $_POST["artikel"]);
$author = $news->setAuthor($db, $_POST["autor"]); //This is line 14
News::newsArticleCreate($db, $title, $news, $author);
}
这是笔者我setter方法的方法:
function setAuthor($db, $author)
{
if(!empty($author))
{
$author = mysqli_real_escape_string($db, $author);
return $this->author = trim($author);
}
else
{
return false;
}
}
是什么我的错?
Fatal error: Uncaught Error: Call to a member function setAuthor() on string
错误表示您正尝试在字符串($ news)上调用setAuthor,而不是在News Class的对象上调用setAuthor。 如果更换以下行:与
$news->setNews($db, $_POST["artikel"]);
$news = $news->setNews($db, $_POST["artikel"]);
它应该工作的罚款。
非常感谢你=) – netsam
什么setNews返回? –
我认为它应该是: - '$ news-> title = setTitle($ db,$ _POST [“ueberschrift”]); $ news-> news = setNews($ db,$ _POST [“artikel”]); $ news-> author = setAuthor($ db,$ _POST [“autor”]);' –