Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Капча
Форумы портала PHP.SU » » Объектно-ориентированное программирование » Капча

Страниц (1): [1]
 

1. QDef - 12 Января, 2012 - 15:12:50 - перейти к сообщению
Разрабатываю класс капчи, как правильно выводить изображение..
при разработке используя процедурный подход, в атрибут src тега img было достаточно указать файл капчи

<img src="captcha.php">

Как быть с классами и ООП? Если ещё при проектирование выбран шаблон MVC.
2. EuGen - 12 Января, 2012 - 15:14:43 - перейти к сообщению
Так а в чем трудность?

<img src="/controller/action">

?
3. QDef - 12 Января, 2012 - 15:23:45 - перейти к сообщению
EuGen пишет:
Так а в чем трудность?

<img src="/controller/action">

?


просто когда я создаю объект в файле самого класса тогда изображение появляется

PHP:
скопировать код в буфер обмена
  1. $img = new Captcha();
  2. echo $img->show();


а когда в другом файле страница просто пустая.

PHP:
скопировать код в буфер обмена
  1. public function show(){
  2.                
  3.                 $this->imageCreate();
  4.                 $img = '';
  5.  
  6. // если эти 2 строки убрать вообще не работает.
  7.                 header("Content-type: image/png");
  8.                 imagepng($this->image);
  9.                
  10.                 $img .= '<img src="'.$this->image.'.png" border="0">';
  11.        
  12.                 return $img;
  13.                
  14.         }



возможно лишнее,но без этого даже в файле класса работать не будет.
PHP:
скопировать код в буфер обмена
  1. header("Content-type: image/png");
  2.                 imagepng($this->image);
4. EuGen - 12 Января, 2012 - 15:28:01 - перейти к сообщению
Покажите то, что Вы указываете в src картинки (что туда реально приходит) - и то, каким методом Вы отдаете картинку.
5. QDef - 12 Января, 2012 - 15:35:21 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $this->image = imagecreatetruecolor($this->width, $this->height);
  2.                 $bg              = imagecolorallocate($this->image, 0,0,0);
  3.                 imagefill($this->image, 0, 0, $bg);


я пытался сразу выводить html код картинки (метод show(), выше описал)

PHP:
скопировать код в буфер обмена
  1. $img .= '<img src="'.$this->image.'.png" border="0">';
  2.  return $img;


но так наверное не правильно
6. EuGen - 12 Января, 2012 - 16:17:25 - перейти к сообщению
Вы так и не написали то, что я просил. Что конкретно у Вас указывается для src? (в исходном тексте посмотрите), и нужен именно тот метод и тот контроллер, который указан в src картинки - целиком, не куски кода.

 

Powered by ExBB FM 1.0 RC1