HTML
<form action="submit.php" method="post">
Comment: <textarea name="coment"></textarea>
Enter Code <img src="captcha.php"><input type="text" name="vercode" />
<input type="submit" name="Submit" value="Submit" />
</form>
captcha.php
<?php
error_reporting(E_ALL);
ini_set('display_errors', 'On');
session_start();
header( "Content-type: image/jpeg");
$text = rand(10000,99999);
$_SESSION["vercode"] = $text;
$height = 25;
$width = 65;
$image_p = imagecreate($width, $height);
$black = imagecolorallocate($image_p, 0, 0, 0);
$white = imagecolorallocate($image_p, 255, 255, 255);
$font_size = 14;
imagestring($image_p, $font_size, 5, 5, $text, $white);
imagejpeg($image_p, null, 80);
?>
У меня есть xammp setup на моем компьютере, и когда я запускаю эту проблему, я сталкиваюсь с запуском captcha.php, но он не возвращает изображение в качестве ответа. Я попытался найти много форумов, и указанный выше PHP-код, похоже, отлично работает со всеми остальными. Я сомневаюсь в том, что я могу ошибаться в настройке локальной среды с помощью xampp.
Вы должны сообщить браузеру, что вы отправляете изображение, установив правильный заголовок. В этом случае это будет header('Content-Type: image/jpeg');
в первых строках вашего кода.