PHP-ImageCreate()错误
我正在尝试制作验证码,我在网上读了一些教程。因此,我有复制/粘贴此功能:PHP-ImageCreate()错误,php,windows,image,Php,Windows,Image,我正在尝试制作验证码,我在网上读了一些教程。因此,我有复制/粘贴此功能: create_image(); exit(); function create_image() { //Let's generate a totally random string using md5 $md5_hash = md5(rand(0,999)); //We don't need a 32 character long string so we trim it down to
create_image();
exit();
function create_image() {
//Let's generate a totally random string using md5
$md5_hash = md5(rand(0,999));
//We don't need a 32 character long string so we trim it down to 5
$security_code = substr($md5_hash, 15, 5);
//Set the session to store the security code
$_SESSION["security_code"] = $security_code;
//Set the image width and height
$width = 100;
$height = 20;
//Create the image resource
$image = ImageCreate($width, $height);
//We are making three colors, white, black and gray
$white = ImageColorAllocate($image, 255, 255, 255);
$black = ImageColorAllocate($image, 0, 0, 0);
$grey = ImageColorAllocate($image, 204, 204, 204);
//Make the background black
ImageFill($image, 0, 0, $black);
//Add randomly generated string in white to the image
ImageString($image, 3, 30, 3, $security_code, $white);
//Throw in some lines to make it a little bit harder for any bots to break
ImageRectangle($image,0,0,$width-1,$height-1,$grey);
imageline($image, 0, $height/2, $width, $height/2, $grey);
imageline($image, $width/2, 0, $width/2, $height, $grey);
//Tell the browser what kind of file is come in
header("Content-Type: image/jpeg");
//Output the newly created image in jpeg format
ImageJpeg($image);
//Free up resources
ImageDestroy($image);
}
但是当我尝试调用它时,我得到了以下错误:
致命错误:第19行调用C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\gtw\registration\createCaptcha.php中未定义的函数ImageCreate()
有什么问题吗?一些PHP库?要能够使用ImageCreate,您需要将GD库作为PHP安装的一部分
使用phpinfo()函数检查是否已安装。如果没有,则需要添加此项 未启用
php_gd2
扩展
它包含在Windows PHP发行版中,但您必须在PHP.ini
中启用它。为此,只需打开php.ini
并取消注释(删除前导的;
)以下行:
extension=php_gd2.dll
保存并重新启动Apache,您应该会没事。您还没有启用php\u gd2扩展 它包含在Windows PHP发行版中,但必须在PHP.ini中启用它。为此,只需打开php.ini并取消注释(删除前导;)以下行:
extension=php_gd2.dll
extension=php_gd2.dll
保存并重新启动Apache,您应该会没事的
要找到Php.ini,请转到xampp文件夹
打开php文件夹
打开php.ini-development
第889行取决于php的版本
它包含在Windows PHP发行版中,但必须在PHP.ini中启用它。为此,只需打开php.ini并取消注释(删除前导;)以下行:
extension=php_gd2.dll
extension=php_gd2.dll
保存并重新启动Apache,您应该会没事。看起来是这样。您是否安装了GD(例如,它是否在您的PHP信息中)?我的PHP.ini文件中没有这一行