長時間のlurker、初めての質問者。Codeigniterアップグレード後のクエリービルダーオブジェクトエラー
クイックバージョン: apt-getアップグレード後にLAMPサイトで500のエラーが発生しました。これは、Codeigniterのクエリビルダーに最もよくトレースできます。
ロングバージョン:
コードベース:CodeIgniterの3.1.5(トラブルシューティングの一部としてアップグレード)
ローカル環境(正常に動作します):XAMPP 7.0.3/7.0.21 PHP/MariaDB 10.1 0.25
生産環境(リターン・エラー):PHP 7.0.21/MySQLの版14.14 按分5.7.19
ページによっては、HTTPエラー500が発生します。
PHP Fatal error: Call to a member function result() on a non-object in /var/www/application/models/Model.php on line xxx
これらのエラーのそれぞれがに似CodeIgniterのクエリビルダコードの一部を指し:
$query = $this->db->query([some query]);
return $query->result();
または
$this->db->group_by([some other field]);
$query = $this->db->get();
return $query->result();
私は見つけることができませんログは、こののさまざまなバージョンを表示します$this->db->group_by()
が人気が高いようですが、クエリビルダーを使用していてもパターンは一貫しています。
それぞれのエラーは、query
オブジェクトに問題があることを示していますが、矛盾していて混乱しています。
手順は解決します
- は3.1.3からapt-getをアップグレード
- アップグレードの再でしたapt-getを
- アップグレードCodeIgniterのロールバック 環境全体でバージョンパリティを取得しようとしました〜3.1.5
- 複数のグーグルがありました
私は困惑しています。どんな助けや洞察も感謝しています。