Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]tworzenie tokena, kilka pytań, biblioteka gd, imagestring itp.
Majzel
post 21.07.2008, 20:22:07
Post #1





Grupa: Zarejestrowani
Postów: 110
Pomógł: 0
Dołączył: 3.07.2007

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


Tworzę tokena z tutoriala bo nigdy wcześniej nie rozbiłem takiego czegoś, i mam taki kod:
Kod
<?php
$slowa=file('hasla.txt');

if(isset($_GET['id']))
    $nr=$_GET['id'];
    else $nr=rand(0,count($slowa)-1);

$slowo=$slowa[$nr];

$wysokosc=20;
$szerokosc=60;


$pic=ImageCreate($szerokosc,$wysokosc);

$bialy=ImageColorAllocate($pic,255,255,255);
$czarny=ImageColorAllocate($pic,0,0,0);
$szary=ImageColorAllocate($pic,150,150,150);

ImageFill($pic,1,1,$bialy);

for($i=0;$i<100;$i++)
    {
    $los1=rand(0,$szerokosc);
    $los2=rand(0,$wysokosc);

    ImageLine($pic,$los1,$los2,$los1,$los2,$szary);
    }
for($i=0;$i<count($slowa);$i++)
    {
    $rozmiar=rand(2,5);

    ImageString($pic,$rozmiar,$i*10+7,3,trim($slowo[$i]),$czarny);
    }
Header("Content-type: image/gif");
ImageGIF($pic);
?>



i co do powyższego kodu mam kilka zasadniczych pytań, od początku czyli:
else $nr=rand(0,count($slowa)-1);

jakie zadanie ma -1 ? bo po testach zauważyłem, że gdy jest -1 to zawsze wyświetli się wyraz, a jeżeli nie ma tego -1 to niekiedy nie wyświetla się wyraz tylko samo tło tokenu, nie rozumiem tego(?)

druga sprawa to druga pętla for:
Kod
for($i=0;$i<count($slowa);$i++)
    {
    $rozmiar=rand(2,5);

    ImageString($pic,$rozmiar,$i*10+7,3,trim($slowo[$i]),$czarny);
    }


i dokładnie nie rozumiem tam tego:
$i*10+7, to jest 3 argument tej funkcji, który ma być punktem zaczęcia napisu z lewej górnej strony, tak pisze w manualu w takim razie dlaczego $i*10 to jest przerwa pomiędzy kolejnymi literami, a 7 to odległość napisu z lewej strony?
testowałem inny obrazek bez pętli to działał normalnie czyli 3 argument to była poprostu odległość od lewego górnego pkt.
nie rozumiem jednak tej pętli, z góry dzięki za cierpliwosc i wytlumaczenie :]
pzdr.
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: 24.07.2025 - 20:04