CodeIgniter dizi değişkeni

3 Cevap php

İşte benim kod şimdiye kadar, tüm ben 'şirket' = $ şirket yapmaya çalıştığınızda dışında çalışmaları şey im eksik var, ve id bilmek aşk ne

if($query) // if the user's credentials validated///
    {
        $this->db->where('username');
        $this->db->select('company');
        $company = $this->db->get('user');

        $data = array(
            'username' => $this->input->post('username'),
            'company' => $company
            'is_logged_in' => true
        );
        $this->session->set_userdata($data);
        redirect('site/members_area');
    }
    else
    {
        $this->index();
    }

3 Cevap

Her ikisi de, diğer cevaplar kodunuzu iki hataları düzeltmek, bu bir ektir.

if($query) {
  $username = $this->input->post('username');

  $this->db->select('company')->where('username', $username);
  $result = $this->db->get('user')->row_array();

  $data = array(
      'username' => $username,
      'company' => $row['company'],
      'is_logged_in' => true
  );
  $this->session->set_userdata($data);
  redirect('site/members_area');
} else {
  $this->index();
}

Orada ne yaptığını görüyor musun? Sen result_array kullanmanız gerekmez (), daha sonra $ query_result kapmak [0] row_array olarak () bunu sizin için. Ve iyi ölçmek için atılmış küçük bir yöntem zincirleme ile size sözdizimi temizleyebilirsiniz.

"$ Şirketi" sonra bir virgül eksik var.

EDIT: görüşleri tartışmaya dayanarak, ben (umarım) şirketin değerini almak için kodunuzu yeniden yazılabilir ettik:

if($query) {
  $username = $this->input->post('username');

  $this->db->where('username', $username);
  $this->db->select('company');
  $result = $this->db->get('user');

  // Here we assume that the query succeeded.
  // You should probably double-check.
  $company = $result->result_array[0]['company'];

  $data = array(
      'username' => $username,
      'company' => $company,
      'is_logged_in' => true
  );
  $this->session->set_userdata($data);
  redirect('site/members_area');
} else {
  $this->index();
}

result_array, bir fonksiyon, bir değişkendir. Denemek

if($query) {
  $username = $this->input->post('username');

  $this->db->where('username', $username);
  $this->db->select('company');
  $query_result = $this->db->get('user');

  // Here we assume that the query succeeded.
  // You should probably double-check.
  $result= $query_result->result_array();

  $data = array(
      'username' => $username,
      'company' => $result[0]['company'],
      'is_logged_in' => true
  );
  $this->session->set_userdata($data);
  redirect('site/members_area');
} else {
  $this->index();
}