Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Błąd z grafiką (użycie GD)
Mike122
post
Post #1





Grupa: Zarejestrowani
Postów: 253
Pomógł: 1
Dołączył: 12.04.2006

Ostrzeżenie: (0%)
-----


Znalazłem skrypt grafiki która generuje się w celu zabezpieczenia przed spamem jednak podczas generowani skryptu grafiki wyświetla się następujący błąd:
Warning: Cannot modify header information - headers already sent by (output started at \www\web\admin\obraz.php:2) in \www\web\admin\obraz.php on line 5
Czyli coś jest w 5 linii:
  1. <?php
  2. header('Content-type: image/png'); //ustawiamy nagłówek HTTP na obrazek png
  3. ?>

Mi się zdaje że jest wszytsko OK.
Oto cały skrypt:
  1. <?php
  2.  
  3.  session_start(); //rozpoczynamy sesję
  4.  $czcionki= array('times.ttf','trebuc.ttf', 'arialbd.ttf','GARAIT.TTF','comic.ttf'); //definiujemy czcionki za pomocą tablicy
  5.  header("Content-type: image/png"); //ustawiamy nagłówek HTTP na obrazek png
  6.  $obraz = ImageCreate(250, 40); //tworzymy obrazek o wysokości 40 i szerokości 250
  7.  $kolor['1'] = ImageColorAllocate($obraz, 255, 255, 255); //definiujemy kolor 1 (biały)
  8.  $kolor['2'] = ImageColorAllocate($obraz, 169, 169, 169); //definiujemy kolor 2 (darkgray)
  9.  $kolor['3'] = ImageColorAllocate($obraz, 220, 220, 220); //definiujemy kolor 3 (gainsboro)
  10.  ImageFilledRectangle($obraz, 0, 0, 300, 50, $kolor['1']); 
  11.  ImageFilledArc($obraz, 25, 25, 40, 40, 180, 360, $kolor['3'], 1);
  12.  for($i = 0; $i < 60; $i++) //w pętli
  13.  {
  14.  imageellipse($obraz, rand(0, 250), rand(0, 40), rand(2, 30), rand(2, 30), $kolor['2']); //tworzymy losowo rozmieszczone elipsy o kolorze darkgray
  15.  }
  16.  for($i = 0; $i < 3; $i++)
  17.  {
  18.  ImageTTFText($obraz, rand(25,30), 0, rand(25,30), rand(30,35), $kolor['3'], $czcionki[rand(0, count($czcionki) - 1)], $_SESSION['obst']); //dodajemy do rysunku tekst o losowym położeniu, kolorze gainsboro, losowej czcion
    ce (losowanej z tablicy)
  19.  } 
  20.  ImageTTFText($obraz, rand(25,30), 0, rand(25,30), rand(30,35), $kolor['2'], $czcionki[rand(0, count($czcionki) - 1)], $_SESSION['obst']); //dodajemy do rysunku tekst o losowym położeniu, kolorze darkgray, losowej czcionc
    e (losowanej z tablicy) oraz tekście, który przekażemy za pomocą sesji
  21.  
  22.  Imagepng($obraz); //wyświetlamy obrazek za pomocą funkcji <a href="manualphp-ImagePNG.html">ImagePNG</a>
  23.  ImageDestroy($obraz); //niszczymy identyfikator pliku
  24.  session_unregister('obst'); //zwalniamy z sesji obst
  25.  ?>

Proszę o pomoc. Posiadam zainstalowane php 5.0.2 z biblioteką GD2.

Już nie ważne problem rozgryziony.

Ten post edytował Mike122 18.08.2006, 21:54:24


--------------------

Największy błąd ze wszystkich błędów to nie słuchać dobrych rad. Nikt nie jest doskonały i nie należy się obrażać za konstruktywną krytykę.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
aktus
post
Post #2





Grupa: Zarejestrowani
Postów: 1
Pomógł: 0
Dołączył: 20.08.2006

Ostrzeżenie: (0%)
-----


problem w tym, ze php bardzo nie lubi jak mu sie zmienia headera oraz kiedy przed generowaniem grafiki jest jakis tekst w html. jedynym sposobem jest wykasowanie wszystkiego przed "<?php"
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 10:29