84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
写了一个生成验证码,但是在本地wampsever环境中不能显示图片但我上传到服务器里,却可以显示。
本地的gd库是打开的
新手弄得一头雾水,求教!
小伙看你根骨奇佳,潜力无限,来学PHP伐。
图片不显示一般是因为生成的图片流不正确,你直接在浏览器里面打开这个图片的地址。可能就你会发现:
phpFatal error :xxxxxx or Warning : xxxxx
php
Fatal error :xxxxxx or Warning : xxxxx
的错误提示。
另外一般本地是开启 display_erorrs 的,但是服务器生产环境里面为了安全起见是关闭所有的错误输出的。
utf-8
ob_clean();
这段代码,为何看着如此眼熟.......!
题主应该是从慕课网上的PHP电商网站开发教程中提取出来的。
这段代码有个BUG,就是在$fontfiles=array("SIMYOU.TTF");$fontfile = '../fonts/' . $fontfiles [mt_rand ( 0, count ( $fontfiles ) - 1 )];
fonts文件夹中,你没有放置SIMYOU.TTF或者其他相关的字体文件,所以服务器找不到字体。
只要把TTF字体文件给补上即可。
输出验证码不能有其他内容输出的!!针对你的情况,是因为你本地环境display_errors开启了,你只需要在最上面,也就是require_once '../include.php'; 这一行的上面加上ini_set('display_errors', 'Off'); 就可以了。另外你的
照你们说的 改了 还是不行
图片不显示一般是因为生成的图片流不正确,你直接在浏览器里面打开这个图片的地址。
可能就你会发现:
的错误提示。
另外一般本地是开启 display_erorrs 的,但是服务器生产环境里面为了安全起见是关闭所有的错误输出的。
utf-8
usually.ob_clean();
to clean the wrong output buffer.这段代码,为何看着如此眼熟.......!
题主应该是从慕课网上的PHP电商网站开发教程中提取出来的。
这段代码有个BUG,就是在
$fontfiles=array("SIMYOU.TTF");
$fontfile = '../fonts/' . $fontfiles [mt_rand ( 0, count ( $fontfiles ) - 1 )];
fonts文件夹中,你没有放置SIMYOU.TTF或者其他相关的字体文件,所以服务器找不到字体。
只要把TTF字体文件给补上即可。
输出验证码不能有其他内容输出的!!
针对你的情况,是因为你本地环境display_errors开启了,
你只需要在最上面,也就是require_once '../include.php'; 这一行的上面加上ini_set('display_errors', 'Off'); 就可以了。
另外你的
照你们说的 改了 还是不行