PHP + Codeigniter + MySQL -> не может выполнять операции с БД

0

Это мой первый пост здесь. Я разработчик Android, и мой сервер всегда находится в php. Я использую PHP + codeigniter + MySQL, основанный на архитектуре, для выполнения некоторых основных операций с базой данных, таких как вставка, чтение, обновление. Чтобы проверить работу скриптов, я запускаю URL-адрес скрипта с соответствующими параметрами в браузере, но проблема заключается в том, что функция вставки не работает

URL для запуска для вставки www. [Xxxxxx].com/[xxxx]/device/checkdevice/test/test/test

device.php

function checkdevice($did=false)
        {
                if($_POST){
                        $did = $_REQUEST['did'];
                        $name = $_REQUEST['name'];
                        $number = $_REQUEST['number'];
                        $res = $this->device_model->insertid($did, $name, $number);
                        return;
                }
        }

device_model.php

function insertid($id=false,$name=false,$number=false)
        {
           $res = $this->db->get_where('tbl_device', array('clm_device_id'=>$id,'clm_device_name'=>$name,'clm_device_number'=>$number))->num_rows;
           if($res==0){
           $date = date("Y-m-d");
           $this->db->insert('tbl_device', array('clm_registered'=>$date, 'clm_device_id'=>$id,'clm_device_name'=>$name,'clm_device_number'=>$number));
                }

                return;
        }

database.php//мое подключение к базе данных работает нормально

$active_group = 'default';
$active_record = TRUE;


$db['default']['hostname'] = 'localhost';
$db['default']['username'] = 'xxxxx';
$db['default']['password'] = 'xxxx';
$db['default']['database'] = 'xxxx';
$db['default']['dbdriver'] = 'mysql';
$db['default']['dbprefix'] = '';
$db['default']['pconnect'] = TRUE; //Tried making FALSE but doesnt work
$db['default']['db_debug'] = TRUE; //Tried making FALSE but doesnt work
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = '';
$db['default']['char_set'] = 'utf8';
$db['default']['dbcollat'] = 'utf8_general_ci';
$db['default']['swap_pre'] = '';
$db['default']['autoinit'] = TRUE;
$db['default']['stricton'] = FALSE;
Теги:
codeigniter

1 ответ

0
Лучший ответ

Попробуйте загрузить вашу модель и получить данные строки запроса прямо в параметре функции и сделать эхо, чтобы проверить, что вы получаете после возврата.

device.php

function checkdevice($did='', $name='', $number='') {
  echo $did;
  echo $name;
  echo $number;
  // if you get values remove post variable and pass these else try with post vars
 // $did = $this->input->post('did');
  //$name = $this->input->post('name');
  //$number = $this->input->post('number');
  $this->load->model('device_model');
  $res = $this->device_model->insertid($did, $name, $number);
  if($res) {
    echo 'success';
  }
  else {
    echo 'fail';
  }
}

device_model.php

function insertid($id=false,$name=false,$number=false) {
  $this->db->select('*');
  $this->db->where(array('clm_device_id'=>$id,'clm_device_name'=>$name,'clm_device_number'=>$number));
  $query = $this->db->get('tbl_device');
  if($query->num_rows > 0){ 
    $date = date("Y-m-d");
    $this->db->insert('tbl_device', array('clm_registered'=>$date, 'clm_device_id'=>$id,'clm_device_name'=>$name,'clm_device_number'=>$number));
    return $this->db->insert_id();
  }
  else{ 
    return false ;
  }
}
  • 0
    Добавление вашего кода и запуск URL теперь показывает -> 404 Страница не найдена Запрошенная вами страница не найдена.
  • 0
    проверьте обновленный убедитесь, что у вас есть значения для $ did, $ name и т. д. в функции try с чо
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню