0

テキストの編集にsummernoteを使用しています.summernoteのツールバーやメニューでテキストにスタイルを与えると表示されますが、テキストを送信した後、htmlタグがデータベースに保存され、スタイルがエスケープされます.

<div id="summernote"><?php echo stripslashes($career['description']); ?></div>
                    <textarea class="form-control" id="deschere" name="desc" placeholder="Description" rows="20" style="display: none;"></textarea>

脚本

<script type="text/javascript">
$('#thisform').submit(function(e){
    $('#deschere').html($('#summernote').code());
    console.log($('#deschere').html());
    //e.preventDefault();
});

データベースに格納するコード

$data['title']= $this->input->post('title');
$data['description']= $this->input->post('desc');
$data['date']=date('Y/m/d h:i');
$id=$this->input->post('id');
$this->db->where('id',$id);
$response=$this->db->update('careers',$data);
return $response;

誰もこれに対する解決策を持っていますか? ありがとうございました。

4

2 に答える 2

3

1. application/config/config.php で XSS フィルタリングを確認します $config['global_xss_filtering'] = TRUE; FALSE に設定します。summernote からインライン スタイルが削除されるためです。

  1. $this->input->post('desc', FALSE); FALSE に設定
于 2014-10-16T15:16:39.577 に答える