1

ユーザーが入力する codeigniter フォームがあります。送信時に、入力が配列にポストされます。この配列は、変数として読み込まれる新しいビューに表示されます。

私の問題は、何らかの理由でビューを更新すると、それらの投稿が失われ、新しいビューに変数が表示されないことです。

投稿された配列をセッション値として保存する方法と、セッション変数にアクセスする方法を教えてください。

したがって、私のコントローラーは次のとおりです。

function new_blank_order_lines() 
  {
    $data = array(
    'customer' =>$this->input->post('customer'),
    'period' =>$this->input->post('period'),
    'buom' =>$this->input->post('buom')
       );

    $this->load->view('sales/new_blank_order_lines',$data);
  }

new_blank_order_lines変数を表示できますecho $customer

ビューを更新するnew_blank_order_linesと、ビューがリロードされ、投稿変数が失われます。したがって、 $data 配列をセッションとして保存して、ページのリロード/更新後でも使用できるようにしたいと考えています。

何かアドバイス?

私は次のようなことを考えています:

    function new_blank_order_lines() 
      {
        $data = array(
        'customer' =>$this->input->post('customer'),
        'period' =>$this->input->post('period'),
        'buom' =>$this->input->post('buom')
           );

        $this->session->$data

        $this->load->view('sales/new_blank_order_lines',$data);
      }

これは明らかに機能しませんか?それが機能する場合、変数の値をエコーアウトするにはどうすればよいですか?

いつもありがとう、

4

2 に答える 2

5

ユーザーがフォームに送信した情報をどうしますか? データベースなどに保存されていませんか?その場合は、そこからデータを取得してみませんか?

一時的にデータを表示できるようにしたい場合は、最後の例のようにセッション変数を使用できますが、いくつかの変更があります。

function new_blank_order_lines() 
  {
    $data = array(
    'customer' =>$this->input->post('customer'),
    'period' =>$this->input->post('period'),
    'buom' =>$this->input->post('buom')
       );

    $this->session->set_userdata($data);

    $this->load->view('sales/new_blank_order_lines',$this->session->all_userdata());
  }

ユーザーガイドを見る

于 2013-03-19T08:38:33.197 に答える
0
$projectID = $this->input->post('projectID');
if($projectID!=''){
    $this->session->set_userdata('projectID', $projectID);
}

post データはリロード中に期限切れになりません このコードを使用してください

于 2016-11-11T09:41:10.983 に答える