PHP错误信息 - 试图让非对象

问题描述:

的财产我不断收到错误PHP错误信息 - 试图让非对象

想在我的PHP代码来获得非对象

的财产。以下是发生错误的代码片段。

这是错误日志指的是线路:$high = $highrow->price;

$mysqli = new mysqli($server, $user, $pass, $db); 
$highresult = $mysqli->query("SELECT * FROM $code WHERE date=$date AND time=$hour ORDER BY price desc LIMIT 1"); 
$highrow = $highresult->fetch_object(); 
$high = $highrow->price; 
echo $high." - High<br>"; 
$hightime = $highrow->time; 
echo $hightime."<br>"; 

我缺少的东西?

+2

SELECT * FROM $ code where $ code? –

+0

它是一个函数的一部分。它只是导致问题的片段不是整个事情。 – lrave1

$mysqli = new mysqli($server, $user, $pass, $db); 
$highresult = $mysqli->query("SELECT * FROM $code WHERE date='$date' AND time='$hour' ORDER BY price desc LIMIT 1"); 
$highrow = $highresult->fetch_object(); 
$high = $highrow->price; 
echo $high." - High<br>"; 
$hightime = $highrow->time; 
echo $hightime."<br>"; 

编辑您的选择查询如上

SQL大约需要文本值单引号(大多数数据库系统 也将允许双引号)。

+0

是的,这将工作。 –

的问题是与这一行:

$high = $highrow->price; 

$high这里是具有对象的阵列,其中具有一个以上的数组。 所以不是这一行试试:

$high = $highrow[0]->price; 

或使用

foreach($highrow as $data) 
{ 
    echo $data->price; 
}