Вопрос № 36535: Приветствую!
В связи с периодическими ошибками в некоторых скриптах (не все до конца продумал) периодически пропадают файлы, или стирается содержимое. Но вопрос не в этом, а вот в чем:
Как можно собрать все ошибки скрипта перед его запуском? ...Вопрос № 36574: Можно ли с помощью РНР изменить цветную картинку на чёрно-белую или коричневатую под старину? Если да, то какие ф-ции нужно использовать?
Заранее благодарен....
Вопрос № 36.535
Приветствую!
В связи с периодическими ошибками в некоторых скриптах (не все до конца продумал) периодически пропадают файлы, или стирается содержимое. Но вопрос не в этом, а вот в чем:
Как можно собрать все ошибки скрипта перед его запуском? Чтобы каждый раз как у пользователя что-то выскочит (например пара Warning'ов) эти же warning'и копировались бы в специальный файл.
Заранее спасибо за помощь, надеюсь все понятно описал.
Отправлен: 02.03.2006, 06:49
Вопрос задал: demar (статус: Посетитель)
Всего ответов: 3 Мини-форум вопроса >>> (сообщений: 3)
Отвечает: Ерёмин Андрей
Здравствуйте, demar!
Это зависит от параметра log_errors в конфигурационном файле php.ini. А так как этот файл находится на сервере, то изменить его не представляется возможным; функции, аналогичной error_reporting() в PHP нет. Если эта опция включена, то все ошибки записываются автоматически в файл error_log.txt. На большинстве хостеров этот параметр выключен, но встречаются и такие, где он включен. Рекомендую обратиться в службу поддержки своего хостера - наверняка они согласятся включить эту опцию для вас.
--------- Нет правила без исключений. Правило без исключений - исключение из правил.
Ответ отправил: Ерёмин Андрей (статус: Профессор)
Отправлен: 02.03.2006, 07:52 Оценка за ответ: 5 Комментарий оценки: А разве нельзя через ini_set() выставить log_errors в "1" и error_log в значение нужного мне файла? Только что попробовал вот такой скрипт (файла file.txt на сервере не существует, поэтому ожидается ошибка уровня E_WARNING):
Все работает, файл с ошибками пишется. Но есть один недочет - если выставить error_reporting(0), то и в файл ничего записываться не будет. Выходит, что скрыть ошибки от пользователя и в тоже время записать их в файл таким способом, к сожалению, не получится. Нет идей?
Отвечает: Cтепанов Андрей Валерьевич
Здравствуйте, demar!
Вам необходима библиотека Debug_HackerConsole.
Взять вы ее можете по адресу: http://dklab.ru/lib/Debug_HackerConsole/
--------- Все мы будем в аду, но я буду с вилами!!
Ответ отправил: Cтепанов Андрей Валерьевич (статус: 4-ый класс)
Отправлен: 02.03.2006, 08:43 Оценка за ответ: 5 Комментарий оценки: dklab вообще молодцы! я уже и забыл про параметр display_errors сейчас добавил этот параметр в ранее указанный скрипт и все заработало. в браузере пусто, все пишется в файл. вопрос, в принципе, закрыт. Хотя от советов других экспертов не отказываюсь :) ps>
Отвечает: КиберТварь
Здравствуйте, demar!
log_errors boolean
Tells whether script error messages should be logged to the server's error log or error_log. This option is thus server-specific.
Замечание: You're strongly advised to use error logging in place of error displaying on production web sites.
log_errors_max_len integer
Set the maximum length of log_errors in bytes. In error_log information about the source is added. The default is 1024 and 0 allows to not apply any maximum length at all. This length is applied to logged errors, displayed errors and also to $php_errormsg.
Ответ отправил: КиберТварь (статус: Практикант)
Отправлен: 03.03.2006, 18:36
Вопрос № 36.574
Можно ли с помощью РНР изменить цветную картинку на чёрно-белую или коричневатую под старину? Если да, то какие ф-ции нужно использовать?
Заранее благодарен.
Отправлен: 02.03.2006, 15:03
Вопрос задал: Agro (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Rusland
Здравствуйте, Agro!
На мой взгляд, без библиотеки ImageMagick здесь не обойтись. На сайте http://imagemagick.net/script/index.php можете скачать саму библиотеку, там же есть ссылки на примеры использования.
--------- Если партия скажет есть контакт, будем есть контакт.
Ответ отправил: Rusland (статус: Специалист)
Отправлен: 02.03.2006, 15:44 Оценка за ответ: 4 Комментарий оценки: Спасибо! Только это ж нужно, что бы ImageMagick был установлен и на сервере, а что делать, если сервер этот софт не поддерживает? Может всё-таки есть что-нибудь в самом РНР?
Отвечает: КиберТварь
Здравствуйте, Agro!
есть такая функция
imagecopymergegray -- Copy and merge part of an image with gray scale
посмотрите на офф сайте РНР там и примеры есть
http://php.net/manual/ru/function.imagecopymergegray.php
Ответ отправил: КиберТварь (статус: Практикант)
Отправлен: 03.03.2006, 17:13 Оценка за ответ: 5 Комментарий оценки: Сасибо.