【问题标题】:PHP mysqli empty arrayPHP mysqli 空数组
【发布时间】:2015-03-11 20:39:22
【问题描述】:

我对我的代码有疑问。当我尝试用我获取的数组填充我的 html 时,我只会得到空格而不是实际结果。谁能告诉我为什么?

<?php
require_once("php/loader.inc.php");
include("php/header.php");
include("php/userpanel.php");
$gebruiker = $_SESSION['user'];
?>


<div class="large-8 columns">
<div class="row">  


<?php
$query = "
SELECT
   items.naam,
   items.prijs,
   items.image_url
FROM inventory
JOIN items
 ON items.id = inventory.item_id
WHERE
 gebruiker_id = ?
";

$stmt = $db->prepare($query);
$stmt-> bind_param('i', $gebruiker->id);

$stmt->execute();

$result = $stmt->get_result();
while ($row = $result->fetch_assoc())
{
    $user_items[] = $row;

   echo '<div class="large-3 small-4 columns">
<img src="'. $user_items['image_url'] .'">
<div class="panel">
    <h6>'. $user_items['naam'] .'</h6>
<h6 class="subheader">'. $user_items['prijs'] .'</h6>
</div>
</div>'; 

}
?>

顺便说一句,当我尝试print_r($user_items); 时,它给了我预期的结果。

提前致谢!

【问题讨论】:

    标签: php arrays mysqli


    【解决方案1】:

    我想你想改变这个:

    $user_items[] = $row;
    

    到这里:

    $user_items = $row;
    

    否则你的索引是一维“更深”

    举个例子:

    $row = array("image_url" => "xy");
    

    在这一行之后:

    $user_items[] = $row;
    

    您无法通过以下方式访问它:

    echo $user_items["image_url"];  //Wrong
    

    你必须这样做:

    echo $user_items[0]["image_url"];  //works
    

    【讨论】:

      【解决方案2】:

      你不需要这行$user_items[] = $row;你可以直接使用$row

      while ($row = $result->fetch_assoc())
      {        
         echo '<div class="large-3 small-4 columns">
        <img src="'. $row['image_url'] .'">
        <div class="panel">
          <h6>'. $row['naam'] .'</h6>
          <h6 class="subheader">'. $row['prijs'] .'</h6>
        </div>
        </div>';     
      }
      

      【讨论】:

      • 哈哈,是的,一旦定时器限制关闭按钮,我就会:)
      猜你喜欢
      • 1970-01-01
      • 2014-08-20
      • 1970-01-01
      • 2015-09-01
      • 1970-01-01
      • 2013-06-05
      • 2015-03-10
      • 2018-03-09
      • 1970-01-01
      相关资源
      最近更新 更多