2016-10-17 4 views
0

Моя проблема заключается в том, что я не могу получить данные в базе данных, но если я использую var_dump() У меня есть данные. Это ошибка:невозможно отобразить данные с контроллера

A PHP Error was encountered Severity: Notice Message: Undefined index: projectid Filename: views/accounting_status.php Line Number: 46

Это мой взгляд

Эта страница была accesed неправильно.

<div class="well"> 
<p><h1><?=$p['projectid']?></h1></p> 
<p><?=$p['code']?></p></div> 

Это мой контроллер

function id($projectid){ 
    $data['p'] = $this->Accounting_Model->get_awardedid($projectid); 
    //echo "<pre>".print_r($data)."</pre>"; 
    $this->load->view('tmp_header'); 
    $this->load->view('accounting_status',$data); 
} 

Это моя модель

function get_awardedid($projectid){ 
    $this->db->select('*')->from('projects') 
          ->join('customer', 'projects.customerid = customer.customerid') 
          ->join('employees', 'projects.endorse_by = employees.employeeid') 
          ->where(array('acctg'=>1,'projectid'=>$projectid)) 
          ->order_by('datecreated', 'desc'); 
    $query = $this->db->get(); 
    return $query->result_array(); 
} 
+1

первый чек с использованием vardumps и print_r есть какой-либо индекс с именем * ProjectID * .Я думаю, что нет индекса в возвращаемый массив с именем ProjectID –

+1

Распечатайте '$ p' на ваш взгляд. Вы уверены, что существует строка? Вы не делаете никаких проверок, чтобы убедиться. – Devon

+0

поместите свой результат 'echo '

".print_r($data)."
"; 'в вопрос. – RJParikh

ответ

0

Если результат будет одна строка, то изменить на модели выглядит следующим образом:

function get_awardedid($projectid){ 
    $this->db->select('*')->from('projects') 
          ->join('customer', 'projects.customerid = customer.customerid') 
          ->join('employees', 'projects.endorse_by = employees.employeeid') 
          ->where(array('acctg'=>1,'projectid'=>$projectid)) 
          ->order_by('datecreated', 'desc'); 
    $query = $this->db->get(); 
    return $query->row_array(); 
} 
0

Если результатом является несколько записей, затем используйте для цикла для печати значений в поле зрения.

<div class="well">foreach($p as $value){<p><h1><?=$value['projectid']?></h1></p><p><?=$value['code']?></p>}</div> 
+0

только 1 запись мне нужно показать – Superman

Смежные вопросы