Я работаю с codeigniter REST API. В моем вызове API я пытаюсь получить значение от $this->input->get('id')
но не получает никакого значения от get.
public function data_get($id_param = NULL){
$id = $this->input->get('id');
if($id===NULL){
$id = $id_param;
}
if ($id === NULL)
{
$data = $this->Make_model->read($id);
if ($data)
{
$this->response($data, REST_Controller::HTTP_OK);
}
else
{
$this->response([
'status' => FALSE,
'error' => 'No record found'
], REST_Controller::HTTP_NOT_FOUND);
}
}
$data = $this->Make_model->read($id);
if ($data)
{
$this->set_response($data, REST_Controller::HTTP_OK);
}
else
{
$this->set_response([
'status' => FALSE,
'error' => 'Record could not be found'
], REST_Controller::HTTP_NOT_FOUND);
}
}
В приведенном выше коде $ id не возвращает никакого значения.
Надеюсь, что это поможет вам :
Используйте либо $this->input->get('id')
или же $this->get('id')
оба должны работать
Ваш data_get
метод должен быть таким:
public function data_get($id_param = NULL)
{
$id = ! empty($id_param) ? $id_param : $this->input->get('id');
/*
u can also use this
$id = ! empty($id_param) ? $id_param : $this->get('id');
*/
if ($id)
{
$data = $this->Make_model->read($id);
if ($data)
{
$this->response($data, REST_Controller::HTTP_OK);
}
else
{
$this->response([
'status' => FALSE,
'error' => 'No record found'
], REST_Controller::HTTP_NOT_FOUND);
}
}
else
{
$this->response([
'status' => FALSE,
'error' => 'No id is found'
], REST_Controller::HTTP_NOT_FOUND);
}
}
Пожалуйста, измените ваш код с $id = $this->input->get('id');
в $id = $this->get('id');
Это должно решить вашу проблему.