[英]How to get values in two different div inside a php loop
我正在嘗試獲得這樣的循環。 假設我在表test
有 20 行,我需要在如下所示的循環中獲取其 id 值。
<section class="test">
<div class="n4">
<div class="n2">
1 // first row id
</div>
<div class="n21">
2 // second row id
</div>
</div>
</section>
<section class="test">
<div class="n4">
<div class="n2">
3 // third row id
</div>
<div class="n21">
4 // fourth row id
</div>
</div>
</section>
..... <section> ....upto all ids in the row
我試圖做的是假設表測試有 20 行。
<?php
$query=$db->query("SELECT * FROM test");
$counter=1;
foreach($query as $row)
{
?>
<section class="test">
<div class="n4">
<?php if($counter %2 !=0) ?>
<div class="n2">
<?php echo $row['id']; ?>
</div>
<?php else ?>
<div class="n21">
<?php echo $row['id']; ?>
</div>
</div>
</section>
<?php
$counter++;
} ?>
這並沒有顯示確切的結果。
請問有什么幫助嗎?
你的代碼有問題,讓我們試試這個
<?php
$query=$db->query("SELECT * FROM test");
$counter=1;
foreach($query as $row)
{
?>
<section class="test">
<div class="n4">
<?php if($counter %2 !=0): /* you've missing ":" symbol*/ ?>
<div class="n2">
<?php echo $row['id']; ?>
</div>
<?php else: /* you've missing ":" symbol*/ ?>
<div class="n21">
<?php echo $row['id']; ?>
</div>
<?php endif; /* you dont need close bracket, but you need "endif" */ ?>
<?php $counter++; ?>
</div>
</section>
<?php } ?>
這種方式將如您所願,我也嘗試過
<?php
$query = [['id' => 1], ['id' => 2], ['id' => 3]] ; // example of result
for ($i=0; $i < count($query); $i+=2) {
try {
?>
<section class="test">
<div class="n4">
<div class="n2">
<?php echo @$query[$i]['id'] // ignore error ?>
</div>
<div class="n21">
<?php echo @$query[$i+1]['id'] // ignore error ?>
</div>
</div>
</section>
<?php
} catch (Exception $e) {
}
}
以上會產生這樣的結果
<section class="test">
<div class="n4">
<div class="n2">
1
</div>
<div class="n21">
2
</div>
</div>
</section>
<section class="test">
<div class="n4">
<div class="n2">
3
</div>
<div class="n21">
</div>
</div>
</section>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.