2017-10-28 14 views
0

各ユーザには複数のプロファイルがあります。ログインした後、プロフィールを選択するように求められます。ビューからコントローラへのCodeigniterデータ

ここにフォームを選択するためのコードがあります。

 <div class="row"> 
     <div class="col-md-4 col-md-offset-4"> 
      <div class="login-panel panel panel-default"> 
       <div class="panel-heading"> 
        <h3 align ="center" class="panel-title">Select Profiles</h3> 
       </div> 
       <div class="panel-body"> 
        <?php 
         foreach($resJacs->{'details'} as $key) { 
          echo form_open('selectaccess', array(
           'class' => 'form-group', 
           'role' => 'form' 
          )); 
          echo form_submit(array(
           'value' => $key->profile_name, 
           'name' => $key->profile_type, 
           'class' => 'btn btn-lg btn-default btn-block' 
          )); 
          echo form_close(); 
         } 
        ?> 
       </div> 
      </div> 
     </div> 
    </div> 

ユーザーがプロファイルプロファイルを選択したときに、後で使用するためにセッションIDがセッションに渡されます。ここでは「selectaccess」のコードは

public function SelectAccess() { 
    $sess_data = array(
     'id' => $this->session->userdata['is_logged_in']['id'], 
     'prfid' => $this->input->post('') 
    ); 

    print_r($sess_data); 
} 

どのように私はselectaccessメソッドで述べたようにprfidできますか?

+0

prfidとは何ですか? – user8455694

+0

あなたはsubmitボタンのname属性を動的に割り当てています。 ''name' => $ key-> profile_type'です。これを行うと、サーバー側で値を取得することはできません。 –

+0

@ViswalingaSuryaSあなたは私に方法を示唆することができます。 –

答えて

0

私はもしかしたら、これはuのを助けることができる、例を与えたい:

私は純粋なHTMLを使用しています。

<form action="SelectAccess/<?php echo $id; ?>"> 
<input type="text" name="name"> 
<button type="submit">Submit</button> 
</form> 

コントローラ

function SelectAccess($val='') { 
$input = $this->input->post('name'); 
$_SESSION['whatever'] = $val; 
} 
0

通常は、コントローラの値を取得するために、フィールドの名前を知っている必要があります。しかし、動的にフィールド名を作成するので、扱いにくくなります。

$_POSTには1つの項目しか含めることができないので、幸いにも1つの入力を投稿しています。あなたの見解が$_POST[0]という値に書き込まれる方法は、$key->profile_nameによって提供されます。うまくいけば、その価値があなたが探しているものです。

public function SelectAccess() { 
{ 
    $sess_data = array(
     'id' => $this->session->userdata['is_logged_in']['id'], 
     'prfid' => isset($_POST[0])) ? $_POST[0] : NULL; 
    ); 
} 
+0

そのNot working。 –

+0

"そのNot working"はあなたを助けません。 「うまくいかない」とはどういう意味ですか?私は答えを編集しました。たぶんそれはあなたが価値が投稿されているかを理解するのに役立ちます。 – DFriend

関連する問題