Takže jsem to udělal takhle:
viz. původní návoda na [http://mart.webz.cz/kontrolni_kod.html]
1) v root adresáři webu je standartně podadresář image, v něm jsem vytvořil další podadresář controlcode, do kterého umisťuji vygenerované obrázky kontrolního kódu (celá cesta je pak např. image/controlcode/f4922f45.jpg).
2) původní funkci pro vytváření obrázku jsem uložil v souboru specfce.php (protože ji volám i z komentářů a knihy návštěv) a vypadá takhle:
// generator obrazku s kontrolnim kodem
function create_controlcode(
$code,$imgfile) {
//odstraneni minuleho obrazku
$handle=opendir(
"image/controlcode");
while ((
$file = readdir(
$handle))!==false) {
if (
$file!=
"." &&
$file!=
"..") unlink(
"image/controlcode/".
$file); }
closedir(
$handle);
$font =
"CEMONSPB.TTF";
// pouzity font
$count = strlen(
$code);
$image = imagecreatetruecolor(100,30);
$background_color = imagecolorallocate(
$image, 250,250,250);
imagefill(
$image,0,0,
$background_color);
// barva znaku
$color[0] = imagecolorallocate(
$image, 0, 0, 0);
$color[1] = imagecolorallocate(
$image, 204, 0, 0);
$color[2] = imagecolorallocate(
$image, 51, 0, 255);
$color[3] = imagecolorallocate(
$image, 51, 102, 51);
$color[4] = imagecolorallocate(
$image, 255, 153, 0);
// úhel natočení znaku
$angle[0] = 10;
$angle[1] = 21;
$angle[2] = 25;
$angle[3] = -10;
$angle[4] = -15;
$angle[5] = -23;
// create image //
for(
$i=0;
$i<
$count+1;
$i++):
$pos = rand(0,5);
$col = rand(0,4);
imagefttext(
$image,15,
$angle[
$pos],10+15*
$i,20,
$color[
$col],
$font,
$code[
$i]);
endfor;
imagejpeg(
$image,
$imgfile,100);
imagedestroy(
$image);
return
"<img style=\"width: 100px; height: 30px; border: 1px solid #000000\" alt=\"code\" src=\"$imgfile\" />";
}
3) Před voláním funkce pak v sobouru raders.php vložím jeden řádek:
$imgfile=
"image/controlcode/".substr(md5(rand(10,20)),1,8).
".jpg";
4) Při volání funkce upravím předávané parametry:
create_controlcode(
$code,$imgfile)
A hotovo, snad jsem na nic nezapoměl.