代码之家  ›  专栏  ›  技术社区  ›  Michal Drozd

Zend\u Captcha\u图像生成空的验证码:(

  •  1
  • Michal Drozd  · 技术社区  · 14 年前

    编辑:

    这只发生在一台服务器上。在另一个具有相同操作系统的系统上,它没有任何问题。

    2 回复  |  直到 11 年前
        1
  •  0
  •   Michal Drozd    14 年前

    下面是Zend/Captcha中的代码/图片.php

    $textbox = imageftbbox($fsize, 0, $font, $word);
    $x = ($w - ($textbox[2] - $textbox[0])) / 2;
    $y = ($h - ($textbox[7] - $textbox[1])) / 2;
    imagefttext($img, $fsize, 0, $x, $y, $text_color, $font, $word);
    

    当图像为空时,会出现如下调用:

    imagefttext(Resource, 30, 0, 1073741903.5, 45.5, 0, "/fonts/arial.ttf", "z9h8")
    

    这很糟糕,因为X有一个疯狂的值1073741903.5。这超出了图像范围,因此没有写入文本。 在调用函数之前检查并固定X和Y值

    我希望这将有助于其他人与这个奇怪的错误。

        2
  •  -1
  •   dwich    14 年前

    比较phpinfo()的输出;并比较其中的所有扩展和设置。

    https://forum.esfcr.cz/registration.htm

    更新: 错误日志中有相关信息吗?是否记录错误?