如何使用$.post显示数据库中的数据


how to display data from database using $.post

嘿,我正在尝试使用$.post从数据库中获取数据。但我无法显示或提醒数据。如果可能的话,我如何显示json数组?如何检查json格式的数据库值?请帮我。我正在使用代码点火器

function profile_view(id3)
{
      $.post("<? echo base_url();?>Attendance/Prev_leave_record", {id:id3},function(data){
                  //do something
    });
 } 

控制器

   function Prev_leave_record()
{
    $teacher_id=$this->input->post('id');
    $teacher_details=$this->AM->prev_record($teacher_id);       
    $out=array(
    'teacher_details'=>$teacher_details);
   // echo '{"teacher_details":'.json_encode($teacher_details).'}';
     echo json_encode($out);
}

型号

   function prev_record($teacher_id)
{
   $this->db->select('leave_from_date,leave_to_date');
    $this->db->from('leave_data');
    $this->db->where('applied_user_id',$teacher_id);
    $teacher_details=$this->db->get();
    return $teacher_details;
}

试试这个

型号:您的模型进行了查询,但没有返回查询结果。请参见返回查询结果。

function prev_record($teacher_id)
{
   //This is opinion, but it will be much more efficient 
   //not using Query Builder for such a simple query
   $sql = "SELECT leave_from_date, leave_to_date FROM leave_data WHERE applied_user_id = ?";
   $query = $this->db->query($sql, [$teacher_id]);
   //always check that the query produced results
   //the next statement returns one row as an array or
   //returns NULL if the query produced no results
   return $query->num_rows() > 0 ? $query->row_array(): NULL;
}

控制器:

function Prev_leave_record()
{
   $teacher_id = $this->input->post('id');
   $teacher_details = $this->AM->prev_record($teacher_id);
   if(isset($teacher_details))
   {
      $out['results'] = "Success";
      $out['teacher_details'] = $teacher_details;
   }
   else
   {
     $out['results'] = "Failed"; 
   }    
   echo json_encode($out);
}

javascript:

function profile_view(id3)
{
   $.post("<? echo base_url();?>attendance/prev_leave_record", {id:id3}, 
       function(data)
       {
         console.log(data); //so you can see the structure returned
         if(data.results === "Success){
            alert("Cool, it worked: " + data.teacher_details);
         } else {
            alert("Opps, we didn't get anything.");
         }
       }
   );
} 

试试这个,

function profile_view(id3)
{
      $.post("<? echo base_url();?>Attendance/Prev_leave_record", {id:id3},function(data){
                  console.log(data); // or alert(data);
    });
 } 

然后从浏览器的Inspect元素检查控制台(F12或ctrl+shift+i)