2016-11-26 107 views
0

我試圖存儲包含php腳本的html標籤。 這是用於導航菜單,我試圖只顯示特定用戶角色的菜單。使用Codeigniter在數據庫中存儲HTML標籤,包括PHP腳本

我存儲這種方式

public function edit_module(){ 
    $id = $this->input->post('Module_ID', TRUE); 
    $update = $this->db->update('ref_modules', array('Module_Name'=>$this->input->post('Module_Name', TRUE), 
                'Module_Menu'=> htmlspecialchars($this->input->post('Module_Menu')), 
                'UpdatedBy'=>$this->session->userdata('user_id')), "Module_ID = '$id'"); 
    if($update){ 
     return TRUE; 
    } 
} 

對於顯示

<!--Menu--> 
       <!--================================--> 
       <div id="mainnav-menu-wrap"> 
        <div class="nano"> 
         <div class="nano-content"> 
          <ul id="mainnav-menu" class="list-group"> 

           <!--Category name--> 
           <li class="list-header">Navigation</li> 

           <?php if($this->data['menu']): ?> 
            <?php foreach($this->data['menu'] as $row): ?> 
             <?php echo htmlspecialchars_decode($row->Module_Menu); ?> 
            <?php endforeach; ?> 
           <?php endif; ?> 
          </ul> 
         </div> 
        </div> <!-- nano --> 
       </div><!-- mainnav-menu-wrap --> 
       <!--================================--> 
       <!--End menu--> 

當我查看源代碼,它很好,但是當我點擊該鏈接,特殊字符顯示。

http://localhost/folderName/%3C?php%20echo%20base_url(%27citizens%27);%20?%3E 

下面是我正在將

<li class="<?php echo ($title == 'Citizens' ? 'active-link' : '');?>"> 
            <a href="<?php echo base_url('citizens'); ?>"> 
             <i class="fa fa-user"></i> 
             <span class="menu-title"> 
              <strong>Citizens</strong> 
             </span> 
            </a> 
           </li> 

任何想法傢伙樣本值?提前致謝!

+0

嘗試'urlencode' –

+0

不好,因爲url是在html標籤內。我編輯了這個問題,並且包含了我插入的標籤 – Alvinrightback

+0

爲什麼要將該值保存在數據庫中 –

回答

0

將Html插入數據庫對於不同的用戶角色是不正確的。如果條件顯示不同用戶角色的菜單,則可以使用。

相關問題