function.inc里除了一句require_once('db.inc');以外全都是函数pic.php中要是按照下面写法就会显示红X
<?php
session_start();
require_once('function.inc');$string=getRandomnum(8);
$_SESSION['rand_num']=$string;
//$string=$_GET['string'];
if (strlen($string)!=8 || !is_numeric($string))
{
$string='[ERROR0]';
}$height = 20;
$width = 100;
$im = ImageCreateTrueColor($width,$height);
$white = ImageColorAllocate($im,255,255,255);
$black = ImageColorAllocate($im,0,0,0);ImageFill($im,0,0,$black);
imagestring($im,6,15,0,$string,$white);
//echo $string;
Header('Content-type:image/png');
ImagePng($im);ImageDestroy($im);
?>而写成这样就没事
<?php
session_start();function getRandomnum($n)
{
      if ($n < 1 || $n>10)
         return "";
      $ary_num= array(0,1,2,3,4,5,6,7,8,9);
      $return ="";
      for ($i=0;$i<$n;$i++)
      {
          $randn = rand(0,9-$i);
          $return .= $ary_num[$randn];
          $ary_num[$randn] = $ary_num[9-$i];
      }
      return $return;
}$string=getRandomnum(8);
$_SESSION['rand_num']=$string;
//$string=$_GET['string'];
if (strlen($string)!=8 || !is_numeric($string))
{
$string='[ERROR0]';
}$height = 20;
$width = 100;
$im = ImageCreateTrueColor($width,$height);
$white = ImageColorAllocate($im,255,255,255);
$black = ImageColorAllocate($im,0,0,0);ImageFill($im,0,0,$black);
imagestring($im,6,15,0,$string,$white);
//echo $string;
Header('Content-type:image/png');
ImagePng($im);ImageDestroy($im);
?>其实原来也是没事的,我忘记了function.inc里添加了啥玩意之后~就对生成的图片有干扰了~~郁闷啊
那里虽然有好多函数但是我都没调用啊,这种情况有哪位大大遇到过么?

解决方案 »

  1.   


    可能有冲突,或者那个funtion.inc有点问题,楼主把代码贴出来看看。楼主顺便试一下用require函数。
      

  2.   

    那个function.inc太长了~~有2k多行...能帖下么~另:require试过了也是红X~~
      

  3.   


    什么东西??那么大 ,我 把 一些文件合在一起 都没有那么大。楼主可以上传到 CSDN,然后搞个附件,下载看看就知道了。哈哈
      

  4.   

    终于找到原因了~<?php之前有个 ` 号
    就是这样
    `<?php
    ...?>它不影响其它功能,只会影响图片输出,写出来希望大家也不要这么粗心~~