Kod Ateşleyici Yük Veritabanı işlem parçacığı durdurmak gibi görünüyor

0 Cevap php

Ben sadece Windows 7 kutusunu basit bir PHP kodu Ateşleyici proje kurdum, 7, Fast CGI, hiçbir modülleri IIS.

Ben yaparak Model sınıfın fonksiyonu birinde veritabanını yüklerken böyle this->load->database() konu söz konusu hat üzerinde durdurmak gibi görünüyor. Sonraki işlemlerin hiçbiri yapılır.

class Account_model extends Model {

  var $userId = '';
  var $userName = '';
  var $requestToken = '';
  var $accessToken = '';
  var $enabled = false;
  var $startOfDay;
  var $endOfDay;

  function Account_model() {
      parent::Model();
  }

  function get($userId) {
      $this->load->database();
      $query = $this->db->get_where('accounts', array('userId' => $userId), 1, 0);
      return $query->result();
  }

  function insert() {
      $this->load->database();
      // ** stop **
      $this->db->insert('accounts', $this); //never gets to this
  }
}

Ben sadece tamamen çizgiyi ommit, ben modelinde bir php istisna tanımsız değişken $ db olsun.

Arayan denetleyicisi:

class SignUp extends Controller {

  function SignUp() {
      parent::Controller();
  }

  function createUser() {
      echo 'processing';

      $this->load->model('Account_model');

      $this->Account_model->userId = 'asd';
      $this->Account_model->userName = 'test_user_pls_delete';
      $this->Account_model->enabled = true;
      $this->Account_model->startOfDay = time();
      $this->Account_model->insert();

      echo 'done'; // never gets to this
  }
}

Ben veritabanı yapılandırma doğru (ana bilgisayar adı, sürücü, vb) ve MySQL workbrench kullanarak makineden veritabanı sunucusuna bağlanmak mümkün doğrulandı.

$active_group = "default";
$active_record = TRUE;

$db['default']['hostname'] = "{omitted}";
$db['default']['username'] = "{omitted}";
$db['default']['password'] = "{omitted}";
$db['default']['database'] = "{omitted}";
$db['default']['dbdriver'] = "mysql";
$db['default']['dbprefix'] = "";
$db['default']['pconnect'] = TRUE;
$db['default']['db_debug'] = TRUE;
$db['default']['cache_on'] = FALSE;
$db['default']['cachedir'] = "";
$db['default']['char_set'] = "utf8";
$db['default']['dbcollat'] = "utf8_general_ci";

Veritabanı tablo adı: hesapları

  • Id int (11) birincil anahtar auto_increment
  • UserId varchar (255) utf8_general_ci
  • UserName varchar (255) utf8_general_ci
  • requestToken varchar (255) utf8_general_ci
  • AccessToken varchar (255) utf8_general_ci
  • Etkin tinyint (1)
  • startOfDay zamanı
  • endOfDay zamanı

Bunu düzeltmek konusunda herhangi bir fikir?

0 Cevap