2016-09-19 5 views
-1

Das habe ich gemacht. Ich benutze MVC Codeigniter.Wie lade ich Daten aus der Datenbank mit Ajax?

$(document).ready(function(){ 
    $.ajax({ 
     type: 'post', 
     data: $("#attendance-pick").serialize(), 
     url: 'manageLogbook_controller/date_checker/'+ <?php echo $userid; ?>, 
     dataType: "json", 
     success: function(result) { 
      debugger; 
      $("#your_attendance").html(result); 
     } 
    }); 
}); 

und das Ergebnis sollte von sein.

CONTROLLER

function date_checker($userid){ 
    How can i pass the result to success: function(result) on my View---> 
    $result['my_attendance'] = $this->ManageLogbook_model->retrieve_attendance($result); 
} 

MODEL

function retrieve_attendance($userid){ 
    return $this->db->where('userid', $userid) 
    ->get('attendance') 
    ->result(); 
} 

Antwort

1

Versuchen Sie folgendes:

Reglerfunktion:

$result['my_attendance'] = $this->ManageLogbook_model->retrieve_attendance($result); 

echo json_encode($result); 

Ajax-Funktion:

success: function(response) 
{ 
    var data = JSON.parse(response); 
} 

und vergessen Sie nicht die Ajax-URL-Parameter zu ändern:

url: <?php echo base_url().'manageLogbook_controller/date_checker/'.$userid ?>, 
+0

sollte ich diese Sir tun? $ ("# your_attendance") .html (Antwort); –

+0

Ja, n ich bin nicht Sir: P –

+0

funktioniert nicht, Erfolg: Funktion (Ergebnis) { var data = JSON.parse (Ergebnis); $ ("# Ihre_Anwesenheit").html (Daten); } Ich dachte über PHP für jede von (my_attendance) auf CONTROLLER $ result ['my_attendance'] = $ this-> ManageLogbook_model-> retrieve_attendance ($ result); –

1

Ihre Ajax

$(document).ready(function(){ 
    $.ajax({ 
     type: 'post', 
     data: $("#attendance-pick").serialize(), 
     url: "<?php echo base_url('manageLogbook_controller/date_checker/'.$userid); ?>", 
     dataType: "json", 
     success: function(result) { 
      $("#your_attendance").html(result.my_attendance); 
     } 
    }); 
}); 

Ihr Controller

function date_checker($userid){ 
    $my_attendance = $this->ManageLogbook_model->retrieve_attendance($userid); 
    $this->output->set_content_type('application/json')->set_output(json_encode(array('my_attendance' => $my_attendance)); 
} 
1

Warum Sie das unter einem nicht versuchen,

$(document).ready(function(){ 
     $.ajax({ 
      type: 'post', 
      data: $("#attendance-pick").serialize(), 
      url: 'manageLogbook_controller/date_checker/'+ <?php echo $userid; ?>, 
      dataType: "json", 
      success: function(result) { 
      console.log(result) 
      //$("#your_attendance").html(result); 
      } 
     }); 
    }); 

Controller

function date_checker($userid){ 
$id = $this->uri->segment(3); 

$value = $this->ManageLogbook_model->retrieve_attendance($id); 

echo json_encode($value); 

Modell

return $this->db->where('userid', $userid) 
    ->get('attendance') 
    ->result(); 

I console.log in den Erfolg Teil verwendet haben, um zu wissen, welche Daten abgerufen werden, so wie es gebraucht, wie wir verwendet werden können. Bitte lassen Sie mich wissen, wenn ein Fehler vorliegt. So kann ich meine Antwort verbessern.

+1

Warum verwenden Sie '$ this-> uri-> segment (3)'? wie 'date_checker ($ userid)' ci tut für Sie. – parth

0

die Sie interessieren ..

Ajax-Funktion in Ihrer Ansicht:

$(document).ready(function(){ 
$.ajax({ 
    type: 'POST', 
    data: {'user_id':$("#attendance-pick").val()}, 
    url: '<?php echo site_url("manageLogbook_controller/date_checker"); ?>', 
    success: function(result) { 
     $("#your_attendance").html(result); 
    } 
}); 

Controller:

function date_checker(){ 
    $user_id = $_POST['user_id']; 
    $attendance = ''; 
    $res = $this->ManageLogbook_model->retrieve_attendance($user_id); 
    foreach($res as $r){ 
     $attendance = $r->attendance; 
    } 
    echo $attendance; 
} 

Modell:

function retrieve_attendance($userid){ 
    $this->db->select('attendance'); 
    $this->db->from('your_table_name'); 
    $this->db->where('user_id',$userid); 
    $res = $this->db->get(); 
    return $res->result(); 
} 

Hope this half .. Ch Eers ..

0
$(document).ready(function(){ 
    $.ajax({ 
     type: 'post', 
     data: $("#attendance-pick").serialize(), 
     url: 'manageLogbook_controller/date_checker/ ?>, 
     dataType: "json", 
     success: function(result) { 
      $("#your_attendance").html(result); 
     } 
    }); 
}); 

//Controller 


function date_checker($userid){ 
    $user_id = $_POST['user_id']; 
    $value = $this->ManageLogbook_model->retrieve_attendance($user_id); 
    echo json_encode($value); 
} 

After this you can parse the json in the success of ajax and display it in the view 
Verwandte Themen