Ayola.net
Новости: В связи с обилием спама, постинг на форуме временно закрыт.

Для связи с поддержкой используйте тикеты в панели управления.
 
*
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь. Октябрь 22, 2017, 18:43:22


Войти


Страниц: [1]
  Печать  
Автор Тема: вывод изображения.  (Прочитано 9040 раз)
0 Пользователей и 1 Гость смотрят эту тему.
molodets
Новичёк
*

Карма: 0
Сообщений: 22


Просмотр профиля
« : Август 29, 2008, 18:01:59 »

Необходимо вывести картинку, сгенерированную следующим образом:
Код:
$r=rand(1000000,9999999);

for($i=0;$i < 7;$i++)
$arr[$i]=substr($r,$i,1);

$im=imagecreate(130,40);
$font = 'arial.ttf';
$size=16;
imagecolorallocate($im,255,255,255);
$a=0;
for($i=0;$i < 7;$i++)
{ $rgb4=700;
while ($rgb4>600)
{
$rgb1=rand(0,255);
$rgb2=rand(0,255);
$rgb3=rand(0,255);
$rgb4=$rgb1+$rgb2+$rgb3;
}
$color=imagecolorallocate($im,$rgb1,$rgb2,$rgb3);
imagettftext($im, $size, rand(-50,50), $a+=14,rand(15,25), $color, $font, $arr[$i]);
}

в таблицу

[кривой код]
Код:
<table>
    <tr>
      <td><span class="style3">&nbsp;</span></td>
      <td><?php header("Content-type: image/png"); imagepng($im); ?></td>
    </tr>
  </table>
[/кривой код]

Естественно появляется ругань headers already sent. Если перенести фразу "header("Content-type: image/png");" в место до начала хтмла, то "Изображение не может быть показано, так как содержит ошибки."
Надеюсь на вашу помощь Улыбающийся
Записан
atimur
Просветлённый
****

Карма: 59
Сообщений: 990


Живу в SanCity


Просмотр профиля WWW
« Ответ #1 : Август 29, 2008, 18:57:02 »

Это типа -> "Сидели всю ночь, пили много.."
headers already sent
1. От этой напасти помогает включенный Output_buffering
2. в верхнем блоке кода невидно куда сохраняется полученный корейский рандом после генерирования картинки.
3. в нижнем блоке кода картинку нужно вставлять через img в таблицу
4. Если воспользоваться поиском по форуму то можно откопать вполне рабочие примеры.
Записан

- Правда, она всегда глаза режет...
- Капча - Идите лесом...
Deller
Новичёк
*

Карма: 1
Сообщений: 4


Просмотр профиля
« Ответ #2 : Август 29, 2008, 19:20:03 »

проще. Выносишь
Код:
<?php header("Content-type: image/png"); imagepng($im); ?>
в отдельный файл например img.php и потом делаешь вот так
Код:
<table>
    <tr>
      <td><span class="style3">&nbsp;</span></td>
      <td><img src="img.php" alt="Imaga"></td>
    </tr>
  </table>
Записан
molodets
Новичёк
*

Карма: 0
Сообщений: 22


Просмотр профиля
« Ответ #3 : Август 29, 2008, 20:46:11 »

Спасибо за ответы. Поставил плюсы Улыбающийся
Записан
molodets
Новичёк
*

Карма: 0
Сообщений: 22


Просмотр профиля
« Ответ #4 : Август 29, 2008, 21:00:27 »

Хм, странно.
Текст cap.php
Код:
<?php
$r
=rand(1000000,9999999);

for(
$i=0;$i 7;$i++)
$arr[$i]=substr($r,$i,1);

$im=imagecreate(130,40);
$font 'arial.ttf';
$size=16;
imagecolorallocate($im,255,255,255);
$a=0;
for(
$i=0;$i 7;$i++)
{
$rgb4=700;
while ($rgb4>600)
{
$rgb1=rand(0,255);
$rgb2=rand(0,255);
$rgb3=rand(0,255);
$rgb4=$rgb1+$rgb2+$rgb3;
}
$color=imagecolorallocate($im,$rgb1,$rgb2,$rgb3);
imagettftext($im$sizerand(-50,50), $a+=14,rand(15,25), $color$font$arr[$i]);
}
header("Content-type: image/png");
imagepng($im);
?>
Пишем:
Код:
<table>
    <tr>
      <td><span class="style3">&nbsp;</span></td>
      <td><img src="cap.php" alt="Imaga"></td>
    </tr>
  </table>
Всё в порядке.
Если же из cap.php вырезаь последние 2 строчки и вставить в img.php:
Код:
header("Content-type: image/png");
imagepng($im);
то в результате такой записи:
Код:
<?php include "cap.php"?>
...
<table>
    <tr>
      <td><span class="style3">&nbsp;</span></td>
      <td><img src="img.php" alt="Imaga"></td>
    </tr>
  </table>
появляется надпись Imaga.
Где ошибка? Улыбающийся
Записан
molodets
Новичёк
*

Карма: 0
Сообщений: 22


Просмотр профиля
« Ответ #5 : Сентябрь 01, 2008, 03:24:26 »

Помогите нубу, плз)
Записан
molodets
Новичёк
*

Карма: 0
Сообщений: 22


Просмотр профиля
« Ответ #6 : Сентябрь 03, 2008, 21:49:19 »

ап Плачущий
Записан
molodets
Новичёк
*

Карма: 0
Сообщений: 22


Просмотр профиля
« Ответ #7 : Сентябрь 11, 2008, 03:06:22 »

никто не ответит? (
Записан
Искатель
Старший Новичёк
**

Карма: 5
Сообщений: 97

Искатель


Просмотр профиля WWW
« Ответ #8 : Сентябрь 11, 2008, 20:44:13 »

это и не должно никак работать. img.php в таком случае формируется на сервере отдельно от cap.php.
Записан

Каждому своя дорога,
Каждому своя печаль,
Каждому и радости немного,
Но все ли видят эту даль…

                   http://www.iskateli.org
Страниц: [1]
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.13 | SMF © 2006, Simple Machines LLC

2003-2008 © ООО "Инфотур" - Бесплатный хостинг Ayola.net
Valid XHTML 1.0! Valid CSS! Dilber MC Theme by HarzeM
Страница сгенерирована за 0.062 секунд. Запросов: 17.