0

ci_sessions テーブルが破損し、エラー + raw SQL が Web サイトに表示されるという問題が発生しました。

db_debug を false に設定すると、応答ヘッダーが 200 の空白の画面が表示されます。これをオーバーライドして、わかりやすいページを表示するにはどうすればよいですか?

4

1 に答える 1

0

まず第一に、(あなたが言ったように)生のSQLデータを表示し、セキュリティの点であまりきれいではないので、に目を向けるdb_debugことをお勧めします.false

つまり、を使用して SQL のエラー メッセージを表示できます$this->db->_error_message()

それをIF条件として使用して、他のページを表示したり、他のことをしたりします。

$this->db->get("any table"); // this is where your original db statement goes
if ($this->db->_error_message()) {
    return false;  // you can do this, or show another view, or anything
} 

注:$this->db->_error_message()は公式にサポートされている関数ではなく、CI の将来のバージョンで変更される可能性があります。ですから、そこだけ注意してください。

于 2013-03-06T05:36:50.790 に答える