快精灵印艺坊 您身边的文印专家
广州名片 深圳名片 会员卡 贵宾卡 印刷 设计教程
产品展示 在线订购 会员中心 产品模板 设计指南 在线编辑
 首页 名片设计   CorelDRAW   Illustrator   AuotoCAD   Painter   其他软件   Photoshop   Fireworks   Flash  

 » 彩色名片
 » PVC卡
 » 彩色磁性卡
 » 彩页/画册
 » 个性印务
 » 彩色不干胶
 » 明信片
   » 明信片
   » 彩色书签
   » 门挂
 » 其他产品与服务
   » 创业锦囊
   » 办公用品
     » 信封、信纸
     » 便签纸、斜面纸砖
     » 无碳复印纸
   » 海报
   » 大篇幅印刷
     » KT板
     » 海报
     » 横幅

使用php动态生成gif时碰到的问题和解决办法

php没有规定只输出html文件,它可以生成动态gif文件。我在使用php动态生成gif图像时碰到了一些问题,现已解决,我用的是php4.05(for win32)+apache3.1.2_win32。

问题一:动态生成gif的程序根本转不起来

我写了一个关于用php生成gif的例子,运行,发现页面就是刷不出来,就象是死了相同,浏览器也没有任何错误提示。

解决办法:修改php所在目录下的php.ini

通过奥索网会员selo帮助,告诉我是要修改安装php所在路径下的php.ini(注重:一定是php路径下的php.ini)extension_dir = 安装php的路径/extensions(比如:c:/php/extensions)。

问题二:php_gd.dll不支持gif

我在程序的开头加载了php_gd.dll动态连接库:dl("php_gd.dll");但是在运行程序的时候,出现了这样的结果:

<br><b>Warning</b>: ImageGif: No GIF support in this PHP build in <b>d:/apache/htdocs/gif2.php3</b> on line <b>12</b><br>。

解决办法:使用php4.05

这时我才发现是书上写的问题php_gd.dll根本不能支持生成gif,经高人指引才知道自己的版本php4.04 for win32缺少php_gd_gif.dll,于是我下载了一份更高版本的php4.05,这里面有支持生成动态gif的php_gd_gif.dll。

问题三:出现警告:Warning: Function registration failed - duplicate name - imagearc in d:/apache/htdocs/gif2.php3 on line 3

程序如下:

<?
dl("php_gd_gif.dll");
header("content-type:image/gif");

$im = imagecreate(400,30);
$black = imagecolorallocate($im,0,0,0);
$white = imagecolorallocate($im,255,255,255);
imageline( $im,200,15,215,15,$white);
imagestring($im, 5, 4, 10, "This is a Gif", $white);

imagegif($im);
imagedestroy($im);


?>

解决办法:修改程序或者php.ini

dl()函数是用来加载dll的,但假如在php.ini文件中将所需要的dll前面的“;”已经去掉的话,那么这时就不要使用这个函数。
假如ini文件中extension=php_gd_gif.dll前的“;”没有去,那么就要用dl("php_gd_gif.dll");加载,总之:此两者是互异的,不然服务器认为是重复命名。


返回类别: 教程
上一教程: 编写PHP的安全策略
下一教程: apache_1.3.12,php4.0bx,informix安装心得

您可以阅读与"使用php动态生成gif时碰到的问题和解决办法"相关的教程:
· 抛开Cookie使用SESSION-PHP中SESSION不能跨页传递问题的解决办法
· 抛开Cookie使用SESSION-PHP中SESSION不能跨页传递问题的解决办法
· 使用php 5时MySQL返回乱码的解决办法
· PHP的计数器程序:解决全部可能碰到的问题
· PHP和JAVA的XML-RPC中文问题解决办法
    微笑服务 优质保证 索取样品