В CodeIgniter, как у меня могут быть сообщения об ошибках PHP, посланные по электронной почте мне?

в php-файле

    <script>
        var array=<?=$my_array?>; 
    </script>
 <a onclick="notify(array,'news')">Send</a>

Также проверьте ваш URL-адрес в ajax, возможно, это ошибка

13
задан Jonathan Leffler 30 December 2011 в 17:31
поделиться

3 ответа

Вы могли расширить класс ядра Исключения, чтобы сделать это.

Возможно, придется скорректировать ссылку на почтовый класс CI, не уверенный, если можно инстанцировать его из библиотеки как это. Я не использую почтовый класс CI сам, я пользовался библиотекой Swift Mailer. Но это должно получить Вас на правильном пути.

Сделайте файл MY_Exceptions.php и поместите его в/application/libraries/(Или в/application/core/для CI 2)

class MY_Exceptions extends CI_Exceptions {

    function __construct()
    {
        parent::__construct();
    }

    function log_exception($severity, $message, $filepath, $line)

    {   
        if (ENVIRONMENT === 'production') {
            $ci =& get_instance();

            $ci->load->library('email');
            $ci->email->from('your@example.com', 'Your Name');
            $ci->email->to('someone@example.com');
            $ci->email->cc('another@another-example.com');
            $ci->email->bcc('them@their-example.com');
            $ci->email->subject('error');
            $ci->email->message('Severity: '.$severity.'  --> '.$message. ' '.$filepath.' '.$line);
            $ci->email->send();
        }


        parent::log_exception($severity, $message, $filepath, $line);
    }

}
18
ответ дан 1 December 2019 в 22:24
поделиться

О, другая опция состоит в том, чтобы получить logrotation приложение, которое поддерживает обзоры пользования электронной почтой. Не уверенный, какая платформа Вы идете, но у Вас могло просто быть что-то, контролируют error_log файл и отправляют, Вы обновляете, не могло бы быть столь же аккуратным, и конечно Вы будете ограничены только информацией в error_log. (error_log Apache, CI имеет/logs/папку в системе, и IIS имеет Windows Events),

0
ответ дан 1 December 2019 в 22:24
поделиться

Одна вещь, которая не учитывается в решении, - это то, что вам нужно захватить суперобъект CodeIgniters для загрузки и использования библиотеки электронной почты (или любой из других библиотек CodeIgniters и собственных функций).

$CI =& get_instance();

После этого вы используете $ CI вместо $ this для загрузки библиотеки электронной почты и установки всех параметров. Для получения дополнительной информации щелкните здесь и загляните в раздел Использование ресурсов CodeIgniter в вашей библиотеке .

3
ответ дан 1 December 2019 в 22:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: