我正在从我的数据库中检索日期。现在我的赋值调用使用MYSQL格式化它。我尝试使用类似的调用来检索数据,但我不断收到错误消息“在非对象上调用成员函数fetch_object()”。
//从数据库中检索数据,包括$ blog_date
$db = new mysqli($host,$user,$pw,$database)
or die("Cannot connect to MySQL.");
$command = "select * from ".$table_name." where blog_id=".$blogId;
$result = $db->query($command);
while ($data = $result->fetch_object())
{
$blog_title = $data->blog_title;
$blog_author = $data->blog_author;
$blog_date = $data->date_of_blog;
$blog_entry = $data->blog_entry;
}
//使用MYSQL,我尝试使用mysql date_format格式化$ blog_date;但是,我不断收到错误消息“在非对象上调用成员函数fetch_object()”
$command = "select date_format($blog_date, '%W, %m/%d/%Y') as formatted_date;";
$result = $db->query($command);
while ($data = $result->fetch_object())
{
$blog_date_formatted = $data->formatted_date;
}
$db->close();
感谢您的帮助!!!
橄榄
答案 0 :(得分:2)
您获得的错误意味着$result
没有来自数据库的有效数据。
您的SELECT
声明存在问题。您需要指定要从哪个数据库表获取数据。像这样:
$command = "select date_format($blog_date, '%W, %m/%d/%Y') as formatted_date FROM table_name;";
有关Mysql SELECT Syntax的更多信息。
您还可以在while
语句之前添加以下代码:
if (!$result) printf("Error message: %s\n", $mysqli->error);
这将为您打印数据库报告的错误。