簡體   English   中英

foreach mysql行從查詢中回顯出帶有行值的html

[英]foreach mysql row from query echo out html with row values

所以我基本上要完成的是mysql查詢中的foreach行,它打印出來自該行數據的html。 這就是我所擁有的,它不斷給我一個錯誤的foreach。

<?php

$shots = mysql_query("SELECT * FROM shots") or die(mysql_error());

while($row=mysql_fetch_array($shots))
$data[]=$row;


foreach($shots as $data)

  if (!empty($data)){

  $id = $data["id"];
  $shotby = $data["shot"];
  $passby = $data["pass"];
  $time = $data["time"];
?>


<div class="feedbody">

    <div class="title"><?php echo $shotby; ?></div>
    <div class="feed-data">: gets a pass from <span><?php echo $passby; ?</span> and he takes a shot!</div>
    <img class="dot" src="images/dot.png" />

</div>
<?php
}

}
?>

或類似的東西。 任何人都可以幫助我指出正確的方向。 我一直試圖找到答案。

編輯:根據要求添加錯誤。

Warning: Invalid argument supplied for foreach() in /home/content/93/7527593/html/fusionboard/includes/feed.php on line 7

首先,如果 MYSQL_ASSOC名稱(而不是索引)訪問數據,則需要將 MYSQL_ASSOC作為第二個參數包含在mysql_fetch_array中,或者使用mysql_fetch_assoc。

不確定為什么要將MySQL結果復制到第二個數組只是為了稍后循環 - 你可以直接遍歷結果:

<?php
$shots = mysql_query("SELECT * FROM shots") or die(mysql_error());
while($row = mysql_fetch_assoc($shots)) { ?>
<div class="feedbody">
    <div class="title"><?php echo $row["shot"]; ?></div>
    <div class="feed-data">: gets a pass from <span><?php echo $row["pass"]; ?></span> and he takes a shot!</div>
    <img class="dot" src="images/dot.png" />
</div>
<?php } ?>

發布錯誤消息后更新:原始代碼中的錯誤是您首先將每個結果行復制到$data ,但是在您的foreach中,您嘗試循環$shots (再次)並讓它調用每個項目$data

您可能想要做的是foreach ($data as $item)然后從$item復制屬性。

像這樣的東西?

<?php
$shots = mysql_query("SELECT * FROM shots") or die(mysql_error());

while($row=mysql_fetch_assoc($shots))
{
  $id = $row["id"];
  $shotby = $row["shot"];
  $passby = $row["pass"];
  $time = $row["time"];
?>

<div class="feedbody">

    <div class="title"><?php echo $shotby; ?></div>
    <div class="feed-data">: gets a pass from <span><?php echo $passby; ?</span> and he takes a shot!</div>
    <img class="dot" src="images/dot.png" />

</div>
<?php
}
?>

也許你需要另一個閉合支撐? (最后的另一個“}”,我的意思是)。

您將數據保存在$ data變量中,但是您的foreach使用$ shots變量。

只需將其更改為foreach($ data為$ something)和$ something [“id”](例如)以檢索值

您正在使用一個變量而不是另一個變量。
和許多無用的代碼。

雖然只是你的需要

<?php foreach($data as $row) { ?> 
<div class="feedbody"> 
    <div class="title"><?php echo $row['shotby'] ?></div> 
    <div class="feed-data">: 
        gets a pass from <span><?php echo $row['passby'] ?</span> and he takes a shot!
    </div> 
    <img class="dot" src="images/dot.png" /> 
</div> 
<?php } ?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM