我是而不是在從CodeIgniter中的數據庫表中提取數據並將其顯示在引導模式窗口中時遇到任何問題。使用此按鈕鏈接;在codeigniter中使用foreach()傳遞給引導模式的數據的限制
<a href='#' class='btn btn-success btn-sm' data-toggle='modal' data-target='#myModal'>View</a>
我能夠訪問模態窗口沒有問題,並顯示以下代碼的結果;
<!-- alert view -->
<div class='modal fade' id='myModal' role='dialog'>
<div class='modal-dialog'>
<!-- Modal content-->
<div class='modal-content'>
<div class='modal-header'>
<?php
foreach ($article->result() as $a) {?>
<button type='button' class='close' data-dismiss='modal'>×</button>
<h1 class='modal-title'><?php echo $a->title; ?></h1>
</div>
<div class='modal-body'>
<h4><?php echo $a->category_name; ?></h4>
<h4><?php echo $a->public_date; ?></h4>
<h4><?php echo $a->description; ?></h4>
<?php } ?>
</div>
<div class='modal-footer'>
<button type='button' class='btn btn-default' data-dismiss='modal'>Close</button>
</div>
</div>
</div>
我有確切的問題強加給foreach()
循環的返回結果的限制。如果我在foreach()
之前使用$i=0; if($i==1) break;
之類的內容,我會得到與article_id結果相同的內容。爲了增加我的困惑和困難,當我嘗試使View
鏈接article_id
href
,所有 db表條目被拉入模態窗口。
我試圖通過在CI文檔與單個結果數組處理因爲這是最適合我的處境查詢生成器章節工作。這是以下方法的基礎;
控制器
$data['a'] = $this->article_model->get_modal();
$this->load->view('article_submit',compact('article', 'page_link', 'category'), $data);
模型
function get_modal()
{
$results = array();
$this->db->select('*');
$this->db->from($this->tbl_article);
$query = $this->db->get();
if($query->num_rows() > 0)
{
$results = $query->result();
}
return $results;
}
VIEW
<?php
foreach ($article->result() as $a) {?>
<button type='button' class='close' data-dismiss='modal'>×</button>
<h1 class='modal-title'><?php echo $a->title; ?></h1>
</div>
<div class='modal-body'>
<h4><?php echo $a->category_name; ?></h4>
<h4><?php echo $a->public_date; ?></h4>
<h4><?php echo $a->description; ?></h4>
<?php } ?>
我結束了保持查看編碼,因爲它沒有模型/控制器代碼爲我工作。實際上,我花了一小時的時間研究,努力確定Google或SO上沒有任何答案。我甚至還給了它一個Doug Flutie Hail Mary
;
VIEW
<?php
$i=0;
foreach ($article->result() as $a) if($i==1) break; {?>
<button type='button' class='close' data-dismiss='modal'>×</button>
<h1 class='modal-title'><?php echo $a->title; ?></h1>
</div>
<div class='modal-body'>
<h4><?php echo $a->category_name; ?></h4>
<h4><?php echo $a->public_date; ?></h4>
<h4><?php echo $a->description; ?></h4>
<?php $i++; ?>
<?php } ?>
我的頭被搗字面上@這一點...感謝您解決這個任何線索。這也可能是我完全缺失的東西,以及沒有人爲錯誤的節日(哈哈!)。
UPDATE
目前我卡試圖使用@manu約瑟夫& @webcrazymaniac建議的解決方案重新裝備 - @webcrazymaniac:不知道如果我理解您的文章列表是如何構建的問題。可能是我沒有爲你發佈足夠的代碼 - 請告訴我你需要看什麼。至於爲View
鏈接的#modalItem包含echo
- 對我來說沒有任何不同。@manu joseph,我不能將$article->result()
更改爲article->row()
,因爲前者是如何將文章數據顯示到頁面(即);
<?php
foreach ($article->result() as $a)
{
echo "<tr>".
"<td>$a->article_id</td>".
"<td>$a->title</td>".
"<td>$a->category_name</td>".
"<td>$a->access_level</td>".
"<td>$a->public_date</td>".
"<td><img class='img-responsive img-circle' style='width:100%; height:50px' src='".base_url()."images/posts/$a->image' title='Image' ></td>".
"<td>".
"<a href='".$a->article_id."' class='btn btn-success btn-sm' data-toggle='modal' data-target='#myModal'>View</a> ".
"<a href='".base_url()."article/view/$a->article_id' class='btn btn-primary btn-sm'>Edit</a> ".
"<a href='".base_url()."article/delete/$a->article_id' class='btn btn-danger btn-sm'>Delete</a> ".
"</td>".
"</tr> ";
}
?>
上面是db結果被回顯出來的表。 @manu約瑟夫,我已經注意到,$ i = 0;只有當我不嘗試在View
按鈕鏈接中添加article_id
時,線條才能正常工作。 這就是答案在於我,因爲當發生這種情況時,我回到了模式只顯示基於點擊鏈接的單個列表的問題,但它碰巧抓住相同的單數結果在模式內顯示,不管點擊按鈕鏈接。有趣的是,現在我以前的分頁問題是不存在的(大聲笑!)。
如此接近我可以嚐嚐吧...
一個小時的tweakling已經得到了我的只顯示一個單一的文章細節所需的(如歪斜)結果;
模式窗口視圖鏈接
"<a href='".$a->article_id."' class='btn btn-success btn-sm' data-toggle='modal' data-target='#myModal'>View</a> ".
MODAL內容
<div class='modal-content'>
<div class='modal-header'>
<?php
foreach ($article->result() as $a) $i=0; if($i==1) break; {
?>
<button type='button' class='close' data-dismiss='modal'>×</button>
<h1 class='modal-title'><?php echo $a->title; ?></h1>
</div>
<div class='modal-body'>
<h4><?php echo $a->category_name; ?></h4>
<h4><?php echo $a->public_date; ?></h4>
<h4><?php echo $a->description; ?></h4>
<?php $i++; ?>
<?php } ?>
</div>
<div class='modal-footer'>
<button type='button' class='btn btn-default' data-dismiss='modal'>Close</button>
</div>
</div>
我不知道,你可以看到(可能帶有圖像放大)光標箭頭懸停在頁面上的第1個View
按鈕上,但是沒有返回具體的article_id。就像我說的那麼近,我可以品嚐它。
痛苦指數UPDATE:
謝謝你這麼多@manu約瑟夫,他繼續嘗試設置我的權利 - 的代碼;
<?php
$i = 0;
foreach ($article->result() as $a)
{
echo $i."<br>";
if($i == 1) break;
?>
<button type='button' class='close' data-dismiss='modal'>×</button>
<h1 class='modal-title'><?php echo $a->title; ?></h1>
<div class='modal-body'>
<h4><?php echo $a->category_name; ?></h4>
<h4><?php echo $a->public_date; ?></h4>
<h4><?php echo $a->description; ?></h4>
</div>
<?php
$i++;
}
die();
?>
的$i
的值在上述標題的頂部和迴盪增加後的值$i++
在模態的底部是呼應和close
按鈕被消失了。因爲它比我目前的整潔,所以我在玩你的排序。
我認爲需要解決的是View
按鈕鏈接,因爲當它們懸停時,顯示正確的article_id
,但模式總是隻能設法拉入第一個記錄集,並且從不增加顯示下面的內容任何其他商品ID;
"<a href='".$a->article_id."' class='btn btn-success btn-sm' data-toggle='modal' data-target='#myModal'>View</a> ".
我知道我是在這裏發抖,並且正在與其他文章ID通過缺少重要東西來連接。任何其他您需要解答的問題,請隨時詢問。現在睡覺吧...
UPDATE
@webcrazymaniac列出了我幾個讀數真正引起他的意圖幫我推到一個更好的方向發展,並保持位置@當下的解決方案;
foreach ($article->result() as $a) {
echo "<a href='".base_url('#myModal/$a->art_id')."' class='btn btn-success btn-sm' data-toggle='modal' data-target='#myModal'>View</a> ".
<?php } ?>
以上是將模態放入視圖的鏈接。現在我可以將第一個數據庫結果拉入所有頁面選擇的模式中;
<!-- alert view -->
<div class='modal fade' id='myModal' role='dialog'>
<div class='modal-dialog'>
<!-- Modal content-->
<?php
$i = 0;
if (!$i = 0){
foreach (array_slice($article->result(), 0, 1) as $a) {
?>
<div class='modal-content' id='myModal<?php echo $a->art_id;?>'>
<div class='modal-header'>
<button type='button' class='close' data-dismiss='modal'>×</button>
<h4 class='modal-title'><?php echo $a->title;?></h4>
</div>
<div class='modal-body'>
<h2><?php echo $a->description;?></h2>
</div>
<div class='modal-footer'>
<button type='button' class='btn btn-default' data-dismiss='modal'>Close</button>
</div>
</div>
<?php
break;
}
}
?>
</div>
使用array_slice()對我來說,限制多少成績,因爲我不能沒有突破前期指定限制了從拉鍊接的方式(專用)定義與分頁相關的限制(並且我絕對是不想打擾那個)在模型中。我目前的模態功能;
public function modal($art_id=NULL)
{
$this->db->select('*');
$this->db->from('tbl_article');
$this->db->where('tbl_article.art_id =', $art_id);
$result = $this->db->get();
return $result->result_array();
}
與我的分辨率只有分毫距離,我有點腦松鼠看到從樹不見林在這一點上和我堅定地相信它是最微不足道的決議,但看不出它。
這是一個非常複雜的問題,但你自己卻找到了最簡單的答案!做得好! –
謝謝@webcrazymaniac--但是我會因爲投反對票而感到厭煩 - 當他們沒有提供解決方案時,我感到不幸 - 但我所關心的只是越來越呃完成(哈哈!)。感謝指針 - **欣賞** ... – HomeOffice