我用簡單的方法解釋這個問題有點困難,所以解釋會很長。 如果評論有用或不可用(簡單是或否),用戶可以投票,當他這樣做時,他的投票將發送到數據庫 - >表'user_vote'。Codeigniter 2.1 - 在foreach循環中使用爆炸
表user_vote有兩列 - user_id和container。每個用戶在此表中只有一行。當他投新票時,現場容器被更新。例如,與ID 205評論用戶投票和他投是,並與ID 300評論他投沒有。 表user_vote將看起來像這樣:
user_id-> 111;
容器 - > 205 - 是的,300沒有
這是工作的罰款,直到這個代碼在這裏,在這裏我需要檢查,如果用戶已經在特定的評論投票。此代碼工作部分 - 問題是以下幾點:
是用戶已經投3時間,如果註釋的ID匹配$拆分[0]將一次性寫$文本,它會產生2一套按鈕,如果ID的評論不匹配,它會產生3組按鈕(部分elseif工作正常)。
我在做什麼錯,我該如何以正確的方式編寫代碼?
<div class="zuta_strana_komentar_korisno" data-id="<?php echo $cmm['id_comment'] ?>">
<?php if(isset($glas) && !empty($glas)) :
$br = explode(',', $glas->container);
foreach($br as $br) :
$split = explode('-', $br);
if($split[0] == $cmm['id_comment']) : ?>
<?php
if($split[1] == 'yes') :
$text = 'koristan.';
else :
$text = 'nekoristan.';
endif;
?>
<p>Ovaj komentar vam je bio <?php echo $text ?></p>
<?php else :?>
<p>Da li vam je ovaj komentar bio od pomoći?</p>
<button role="yes">Da</button><button role="no">Ne</button>
<?php
endif;
endforeach;
elseif($this->session->userdata('is_logged_in') == TRUE && empty($glas)) : ?>
<p>Da li vam je ovaj komentar bio od pomoći?</p>
<button role="yes">Da</button><button role="no">Ne</button>
<?php endif ?>
</div>
一個手柄,我認爲這個問題是在'中的foreach($ br as $ br):'把它改成foreach($ br as $ br_value):' - 那麼你也需要在這個循環中把所有$ br改爲$ br_value。 – TigerTiger 2012-08-14 10:34:55