note 130012 added to ref.image
| From: | arsenij633@gmail.com | Date: | Fri, 07 Feb 2025 15:53:59 +0000 |
| Subject: | note 130012 added to ref.image | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-221832@lists.php.net to get a copy of this message | ||
For example code on php
for generating captcha
<?php
session_start();
// Создаем изобÑажение
$image = imagecreatetruecolor(200, 70);
// Ðадаем ÑвеÑа
$bg = imagecolorallocate($image, 255, 255, 255);
$text_color = imagecolorallocate($image, 33, 33, 33);
$line_color = imagecolorallocate($image, 64, 64, 64);
$pixel_color = imagecolorallocate($image, 100, 100, 100);
// Ðаливаем Ñон
imagefill($image, 0, 0, $bg);
// ÐенеÑиÑÑем ÑлÑÑайнÑй код
$chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
$length = strlen($chars);
$code = '';
for ($i = 0; $i < 4; $i++) {
$code .= $chars[rand(0, $length - 1)];
}
// СоÑ
ÑанÑем код в ÑеÑÑÐ¸Ñ Ð´Ð»Ñ
поÑледÑÑÑей пÑовеÑки
$_SESSION['captcha_code'] = $code;
// ÐобавлÑем ÑлÑÑайнÑе линии
for ($i = 0; $i < 4; $i++) {
imageline(
$image,
rand(0, 200),
rand(0, 70),
rand(0, 200),
rand(0, 70),
$line_color
);
}
// ÐобавлÑем ÑимволÑ
for ($i = 0; $i < 4; $i++) {
$x = 35 + ($i * 40);
$y = rand(20, 35); // СлÑÑайное
веÑÑикалÑное положение
// Создаем вÑеменное
изобÑажение Ð´Ð»Ñ Ð¿Ð¾Ð²Ð¾ÑоÑа
Ñимвола
$temp = imagecreatetruecolor(20, 20);
imagefill($temp, 0, 0, $bg);
imagestring($temp, 5, 5, 2, $code[$i], $text_color);
// ÐовоÑаÑиваем Ñимвол
$angle = rand(-20, 20);
$rotated = imagerotate($temp, $angle, $bg);
// ÐопиÑÑем повеÑнÑÑÑй
Ñимвол на оÑновное
изобÑажение
imagecopy(
$image,
$rotated,
$x,
$y,
0,
0,
20,
20
);
// ÐÑвобождаем памÑÑÑ
imagedestroy($temp);
imagedestroy($rotated);
}
// ÐобавлÑем ÑоÑки ÑÑма
for ($i = 0; $i < 100; $i++) {
imagesetpixel(
$image,
rand(0, 200),
rand(0, 70),
$pixel_color
);
}
// УÑÑанавливаем заголовок
Ð´Ð»Ñ Ð²Ñвода изобÑажениÑ
header('Content-Type: image/png');
imagepng($image);
// ÐÑиÑаем памÑÑÑ
imagedestroy($image);
?>
----
Server IP: 45.112.84.4
Probable Submitter: 80.90.5.137 (proxied: 57.129.52.118)
----
Manual Page -- https://php.net/manual/en/ref.image.php
Edit -- https://main.php.net/note/edit/130012
Del: integrated -- https://main.php.net/note/delete/130012/integrated
Del: useless -- https://main.php.net/note/delete/130012/useless
Del: bad code -- https://main.php.net/note/delete/130012/bad+code
Del: spam -- https://main.php.net/note/delete/130012/spam
Del: non-english -- https://main.php.net/note/delete/130012/non-english
Del: in docs -- https://main.php.net/note/delete/130012/in+docs
Del: other reasons-- https://main.php.net/note/delete/130012
Reject -- https://main.php.net/note/reject/130012
Search -- https://main.php.net/manage/user-notes.php