Если раскоментировать строчку header('Content-type: image/png'); то браузер пишет:
Цитата:
Изображение «http://phpweb20/c.php» не может быть показано, так как содержит ошибки.
С закоментированной строчкой браузер выдает такое:
Цитата:
Strict Standards: Non-static method Text_CAPTCHA::factory() should not be called statically in C:\www\phpweb20\htdocs\c.php on line 8
Strict Standards: Non-static method Text_Password::create() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Text\CAPTCHA\Driver\Image.php on line 169
Strict Standards: Non-static method Text_Password::_createPronounceable() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Text\Password.php on line 63
Strict Standards: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Text\CAPTCHA\Driver\Image.php on line 217
Strict Standards: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Image\Text.php on line 479
Strict Standards: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Image\Text.php on line 675
Strict Standards: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Image\Text.php on line 929
Эти кракозябры, насколько я понимаю, сгенерированое изображение, при обновлении меняются. Но почему браузер не может отобразить его как картинку?
И почему возникают эти ошибки, если вызов функций согласно документации к модулю.
Champion
Отправлено: 27 Июля, 2011 - 14:40:55
Активный участник
Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008 Откуда: Москва
Помог: 57 раз(а)
Не может отобразить потому что сначала выводятся ошибки и коверкают содержимое изображения.
В тексте написано, что нестатические методы не должны вызываться как статические. Это написано обычным человеческим языком, вы могли это прочитать.
Надо class::method() вот такой вызов переправить на такой $obj->method(). Сначала только $obj = new class; Можно проще @ поставить перед вызовами, но не надо этого делать
Sereban
Отправлено: 27 Июля, 2011 - 15:14:56
Новичок
Покинул форум
Сообщений всего: 3
Дата рег-ции: Июль 2011
Помог: 0 раз(а)
я уже пробовал создавать экземпляр. да, первая ошибка убирается. но все остальные остаются, и картинка все равно не отображается.
Strict Standards: Non-static method Text_Password::create() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Text\CAPTCHA\Driver\Image.php on line 169
Strict Standards: Non-static method Text_Password::_createPronounceable() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Text\Password.php on line 63
Strict Standards: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Text\CAPTCHA\Driver\Image.php on line 217
Strict Standards: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Image\Text.php on line 479
Strict Standards: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Image\Text.php on line 675
Strict Standards: Non-static method PEAR::isError() should not be called statically, assuming $this from incompatible context in C:\xampp\php\PEAR\Image\Text.php on line 929
первая строчка - это создание объекта класса Text_CAPTCHA;
вторая строчка - вызов метода factory созданного объекта, в данном случае возвращает объект класса Image_Text вроде бы.
я поковырялся немного внутри классов, где возникали ошибки. кое-что исправил.
теперь капча работает. пока вроде бы без багов.
также пришлось изменить кое-что в файле PEAR.php, а именно добавить static к функции isError.
и тут мне не понятно, почему разработчики pear сами этого не сделали???
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.