php图像没有被提取stdClass

时间:2018-04-30 22:36:31

标签: php html image

<?php

require_once'header.php';
require_once'eloMath.php';

    $votedIds = [3];
    $votedIdsString = implode(',', $votedIds);

    //$query = "SELECT 'GameID' FROM `voteduser` WHERE `UserID`= $_SESSION['username']";

    $query2 = "SELECT * FROM `game` WHERE ID NOT IN ($votedIdsString) ORDER BY RAND() LIMIT 2";

    $result2 = mysqli_query($db_server, $query2);
    //$result2 = $db_server->query($query2);

    while($row = mysqli_fetch_object($result2)) {
    $images[] = (object) $row;
}

$cover = $row['Cover_Art'] .'"src="GameArt\'. $row';

?>


<!DOCTYPE HTML>
<html>
    <head>
        <title>Game voting</title>
    </head>
<body>

    <center>
<!--
   <?php 
  while($row = $result2->fetch_assoc())
  {
    echo '<a href="gameRate.php?win=' . $row['ID'] . ' Or loss=' . $row['ID'] . '"><img id="votingGameArt' . $row['Cover_Art'] .'" src="GameArt/'. $cover .'"></a>';
  }
    ?>
-->

       <table>
    <tr>
        <td valign="top" class="image"><a href="gameRate.php?win=<?=$images[0]->ID?>&loss=<?=$images[1]->ID?>"><img src="GameArt/<?=$images[0]->$cover?>" /></a></td>
        <td valign="top" class="image"><a href="gameRate.php?win=<?=$images[1]->ID?>&loss=<?=$images[0]->ID?>"><img src="GameArt/<?=$images[1]->$cover?>" /></a></td>
    </tr>
        </center>
</body>


    </html>

我正在尝试获取两个封面艺术并在表格中显示它们,但它没有显示任何内容,而是显示任何错误,而是显示一个说明未定义属性stdClass的通知: :$

我将如何解决此问题

1 个答案:

答案 0 :(得分:0)

我真的不明白,你想用这个做什么:

$cover = $row['Cover_Art'] .'"src="GameArt\'. $row';

您尝试将$row用作数组,但它包含对象,因为它是使用mysqli_fetch_object()获取的。

此外,您在提取周期之外使用$row,因此它仅包含最后一次提取的值。

最后,您确定要使用$cover作为对象属性名吗?因为使用了此构造$images[0]->$cover,所以当您需要按名称访问属性时,在执行之前不知道该属性。如果您需要访问名为&#34; cover&#34;的商家,则应改为编写$images[0]->cover