簡體   English   中英

如何將數據保存到會話CodeIgniter

[英]How to save data to session CodeIgniter

海地,我嘗試將數據保存到會話CodeIgniter 3,因此,如果我發布表單但驗證表單說該表單不完整,則不會刪除用戶的值

控制器:

$err = array();
if(!$_POST['message']) {
        $err['msg_err'] = '<strong>Oh snap!</strong> message is empty';
}
//saving temporary data if error
if(count($err)){
        $ses_data = array(
            'phonebook'         => $this->input->post['phonebook'],
            'message'           => $this->input->post('message')
        );
        $this->session->set_tempdata($ses_data);
}

查看:

<textarea name="message" placeholder="Type a message"><?php if (isset($_SESSION['message'])) {echo $_SESSION['message'];} ?></textarea>

如果我發布單個數據,則上面的代碼可以正確地工作,我的意思是來自文本或文本區域,但如果條件為多個,則不能選擇,我知道這是因為數據是數組。

問題開始於此:

<select name="phonebook" class="form-control select2" multiple="multiple" data-placeholder="Select a contact" style="width: 99.5%;">
<?php
    foreach ($phonebook->result() as $p){
    echo"<option value='$p->Number' ";if (isset($_SESSION['phonebook'])) { if($_SESSION['phonebook']===$p->Number){echo "selected";}} echo">$p->u_full_name</option>"; }
    }
?>
</select>

它只能保存1個選擇數據,如果我在數組$this->input->post['phonebook']控制器上發生了更改,我認為視圖存在問題,那么如何在多項選擇中顯示數組? 謝謝

首先在ci中配置自動加載會話,然后嘗試此代碼

$err = array();
if(!$_POST['message']) {
    $err['msg_err'] = '<strong>Oh snap!</strong> message is empty';
  }
 //saving temporary data if error
 if(count($err)){
    $ses_data = array(
        'phonebook'         => $this->input->post['phonebook'],
        'message'           => $this->input->post('message')
    );
    $this->session->set_userdata($ses_data);
 }

謝謝

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM