Передать значение из контроллера в jQuery CodeIgniter - PullRequest
0 голосов
/ 07 февраля 2019

Это Insert_model

class Insert_model extends CI_Model{
   public function idp(){
   $sql = sprintf("SELECT npd from `dosen`  ORDER BY npd DESC LIMIT 1");
   $query = $this->db->query($sql);
   foreach ($query->result_array() as $key ) {
       $npd1 = $key['npd'];
   }
   $kalimat1 = substr($npd1, 0,3);
   return $kalimat1;
}

Это функция из контроллера регистра:

class Register extends CI_Controller{
  public $model;
  public function __construct(){
      parent::__construct();
      $this->load->helper(['url','html']);
      $this->load->database();
      $this->load->model('Insert_model');
      $this->model=$this->Insert_model;
  }
  public function index(){
      $nomor= array('npd' => $this->model->idp());
      echo json_encode($nomor);
  }
}

Вот так я получаю доступ к значению $ nomor через Ajax:

$("#status").on("change", function(){
var x = $("#status option:selected").attr("value");
if(x=='mahasiswa'){
    $.ajax({
        url:'<?php echo base_url();?>register/index',
        type: 'POST',
        dataType: 'json',
        success : function(nomor){
            $('#nomor').attr('placeholder',nomor.npd);
        },
    });
});

Я хочу иметь возможность передать $nomor из контроллера регистра, чтобы использовать его в моем файле jQuery.Я пытался использовать json_encode() на контроллере, но на самом деле это не сработало.

Ответы [ 2 ]

0 голосов
/ 12 февраля 2019

Попробуйте,

public function index(){
      $nomor= array('npd' => $this->model->idp());
      echo json_encode($nomor);
      exit();
  }

Я надеюсь, это поможет вам

0 голосов
/ 07 февраля 2019

Попробуйте с контроллером: Ref: https://www.codeigniter.com/userguide3/general/models.html

$this->load->model('model_name');
$data['npd'] = $this->model_name->method();
echo json_encode($data);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...