Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Skrypt captcha nie wyświetla obrazka tylko "robaki"
bogdanh
post 2.05.2013, 15:38:39
Post #1





Grupa: Zarejestrowani
Postów: 56
Pomógł: 0
Dołączył: 22.04.2012

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


Wczytuje standardowy skrypt dla prostego captcha ale zamiast obrazka dostaję błąd PHP i "robaki zamiast grafiki".
Poniżej skrypt, który wczytuję poprzez include do pliku index.php...
Kod
header("Content-type: image/png");
$string = "abcdefghijklmnopqrstuvwxyz0123456789";
for($i=0;$i<6;$i++)
{
    $pozycja_znaku = rand(0,strlen($string));
    $szesc_znakow .= $string{$pozycja_znaku};
}
$obrazek = ImageCreate(60, 20) or die("Serwer posiada biblioteke GD?");
$kolor_tla = ImageColorAllocate($obrazek, 255, 255, 255);
$kolor_tekstu = ImageColorAllocate($obrazek, 0, 0, 0);
ImageString($obrazek, 32, 5, 0, $szesc_znakow, $kolor_tekstu);
Imagepng($obrazek);


Błąd:Warning: Cannot modify header information - headers already sent by...
Zamiast obrazka dostaję coś takiego:
�PNG  IHDR<����jPLTE

Ten post edytował bogdanh 2.05.2013, 15:46:32
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
lobopol
post 2.05.2013, 15:43:40
Post #2





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

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


Obstawiam kodowanie pliku, zmień na utg8 bez bom i kolejna rzecz czy coś jest wyświetlane przed tym includem (nawet spacja przed <?php może to powodować)


--------------------
Go to the top of the page
+Quote Post
bogdanh
post 2.05.2013, 15:52:51
Post #3





Grupa: Zarejestrowani
Postów: 56
Pomógł: 0
Dołączył: 22.04.2012

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


Cytat(lobopol @ 2.05.2013, 16:43:40 ) *
Obstawiam kodowanie pliku, zmień na utg8 bez bom i kolejna rzecz czy coś jest wyświetlane przed tym includem (nawet spacja przed <?php może to powodować)

Całość mam kodowaną w UTF-8. Próbowałem zmieniać jak piszesz kodowanie, ale dalej pisze "robakami".
Skrypt jest includowany do kodu html. Poniżej wycinek:
Kod
<div class="form_row"><label class="left">Email: </label><input type="text" class="form_input"/></div><?php include("captcha.php");?>                    
                    <div style="float:right; padding:10px 25px 0 0;">

Żeby nie dostawać komunikatu o wysyłaniu nagłowka zastosowałem ob_start() i ob_end_flush() ale bez efaktu.

Go to the top of the page
+Quote Post

Posty w temacie


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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 21:28