2016-10-14 7 views
9

में क्लिक बटन के बाद कुछ सत्र सरणी सेगमेंट को कैसे निकालें I यह कैसे कर सकता हूं। क्रिप्या मेरि सहायता करे।कोडिनेटर

यह मेरा नियंत्रक समारोह

public function payment_plan() { 

    $result = new stdClass(); 
    $result->status = FALSE; 
    $post_data = $this->input->post(); 
    if ($post_data) { 
     $payment_plan = $post_data['payment_plan']; 
     $value = $post_data['value']; 

     $deleted_plan = $this->input->post('key'); 

     $payment_plans = $payment_plan."/".$value.",";    

     $payment_session = $this->session->userdata('payment_plans'); 
     if($payment_session == NULL){ 
      $array_one = array(); 
      array_push($array_one, $payment_plans); 
      $this->session->set_userdata('payment_plans', $array_one); 
     } else { 
      $session_two= $this->session->userdata('payment_plans'); 
      array_push($session_two, $payment_plans);    
      $this->session->set_userdata('payment_plans', $session_two); 
     } 

     $final_session = $this->session->userdata('payment_plans'); 

     $this->data['payment_plans'] = $final_session; 
     //var_dump($final_session); 
     $result->status = TRUE; 
     $this->load->view('cms/payment_plan', $this->data); 
    } 
} 

अगर मैं दृश्य पेज $deleted_plan jQuery के माध्यम से भरने में बटन को नष्ट क्लिक किया।

यह

$(".key").click(function() { 

    var key = $(this).attr('id');   

    jQuery.ajax({ 
     type: "POST", 
     url: "<?php echo base_url(); ?>" + "property" + "/" + "payment_plan", 
     dataType: 'html', 
     data: {key: key,payment_plan: payment_plan, value: value}, 
     success: function (data) { 
      if (data) { 
       // $("#payment_plans").html(data); 
      } 
     } 
    }); 
}); 

मेरे समस्या कैसे मैं के बाद मैं हटाएँ बटन क्लिक किया सत्र सरणी में सरणी खंडों को दूर है मेरी jQuery कोड है।

+1

आप उपयोगकर्ता पर कर सकते हैं फ़ंक्शन $ में ईवेंट पर क्लिक करें-> सत्र-> u nset_userdata ('session_name'); –

+0

यदि मैं $-> session-> unset_userdata ('session_name') का उपयोग करता हूं; सभी सरणी तत्व –

+0

अनसेट करें क्या आप कृपया अपना नमूना सत्र सरणी और इच्छा सत्र परिणाम लिख सकते हैं? –

उत्तर

3

का उपयोग कर सकते हैं, यह प्रयास करें सीधे सेट किए बिना सत्र तत्व आशा है कि यह मदद करेंगे

if($deleted_plan) 
{ 
    foreach($final_session as $k => $session) 
    { 
     if(isset($session[$deleted_plan])) 
     { 
      unset($final_session[$k][$deleted_plan]); 
     } 
    } 
    $final_session = array_values($final_session); 
    $this->session->set_userdata('payment_plans', $final_session); 
} 
+0

यह उत्तर मुझे हल करने में मदद करता है। बहुत धन्यवाद। –

1

आप उदाहरण नीचे उल्लेख कर सकते हैं:

चलें take an array and set in session

$array_one = array(0=>'plan1',1=>'plan2',2=>'plan3'); 
$this->session->set_userdata('payment_plans', $array_one); 

को सेट किए बिना विशिष्ट तत्व के लिए अब की तरह, सबसे पहले get session into a variable like here $arra

$arra = $this->session->userdata('payment_plans'); 

Unset specific array element आप अनसेट करने के लिए, जैसा कि आप remove 'plan1' करना चाहते हैं चाहते हैं

unset($arra[0]); //0 is key of plan1 

Set result array into session फिर

$this->session->set_userdata('payment_plans', $arra); 
$arra = $this->session->userdata('payment_plans');     
print_r($arra); 

या

आप

$array_one = array(0=>'plan1',1=>'plan2',2=>'plan3'); 
$this->session->set_userdata('payment_plans', $array_one); //set session 
unset($_SESSION['payment_plans'][0]); //unset specific element. 0 is key of session array 
$arra = $this->session->userdata('payment_plans'); // get session array    
print_r($arra); // display session array