2016-04-29 7 views
1

Ich versuche, die Kunden einer bestimmten Firma zu holen, wo in der company_id ist eine Sitzungsvariable. Ich werde den Code meines Controllers dort veröffentlichen, wo die Daten abgerufen werden. Derzeit werden alle Kunden abgeholt und nicht die Kunden des jeweiligen Unternehmens.Codeigniter: Fetch Kunden basierend auf einer bestimmten Firma ID

Code:

public function index() 
{ 
if($this->input->post("export_btn")){ 
    $type = $this->input->post("type"); 
    $sel_elements = $this->input->post("selectItemsel_elements"); 

    // filename for download 
    if("customer" == $type){ 
     $adco = $this->session->userdata('company_id'); 
     $this->db->select("naturescrm_customers.* FROM naturescrm_customers"); 
     $this->db->join("naturescrm_company","naturescrm_company.company_id=naturescrm_customers.company_id AND naturescrm_customers.company_id='".$adco."'","left"); 
     $customers = $this->customer_m->get_by("id IN (".implode(",",$sel_elements).")"); 
     foreach($customers as $order){ 
      $data[] = array(
       "customer_id" =>"".$order->customer_id, 
       "first name" =>$order->name, 
       "last name" =>$order->lname, 
       "address 1" =>$order->address, 
       "address 2" =>$order->add2, 
       "city" =>$order->city, 
       "state" =>$order->state, 
       "country" =>$order->country, 
       "zip_code" =>$order->zip_code, 
       "email" =>$order->email, 
       "phone" =>$order->phone, 
      ); 
     } 
} 

Ähnlich ist es in dem folgenden Code, Wie soll ich die Session-Variable übergeben, damit die Kunden auf das Unternehmen Sitzungsvariablen basierend erscheinen?

CODE

if("customer" == $type){ 
    $elements = array(); 
    $adco = $this->session->userdata('company_id'); 
    $customer = $this->customer_m->get(); 
    foreach ($customer as $v) { 
     $elements[ $v->id] = $v->customer_id .'-'.$v->name; 
    } 
    $this->data['elements'] = $elements; 

} 

Jede Hilfe wird gratly geschätzt. Danke

+0

Add wo Zustand nach beitreten '$ this-> db-> Wo ("naturescrm_company.company_id", $ adco)' –

+0

Ok, ich Ihren Code versuchen wird. Entferne ich in diesem Fall das UND in der Verknüpfung? –

+0

Wenn Sie derzeit alle Datensätze abrufen, dann versuchen Sie nur, nur wo Bedingung hinzufügen :) –

Antwort

1

Versuchen Zugabe Filter wie

$this->db->select("naturescrm_customers.*"); 
$customer = $this->customer_m->get(); 
foreach ($customer as $v) { 
    if($adco === $v->company_id){ 
      $elements[ $v->id] = $v->customer_id .'-'.$v->name; 
    } 
} 
+0

Das hat funktioniert. Vielen Dank :) –

Verwandte Themen