LifeType 中文開發論壇

開發 => 外掛程式 => 主題作者是: magicbug 於 三月 23, 2006, 08:50:03 下午



主題: 请求帮助,关于authimage的显示问题。
作者: magicbug三月 23, 2006, 08:50:03 下午
今天在测试站点上试用了authimage插件,但post comment处显示authimage处一直是一个红叉,不能正常显示。
经过调试pluginauthimage.class.php文件,问题还是没有解决,并且有点奇怪。
1、发现在ImageGIF($image, $tempFile);语句后,在相应的目录处能看到生成的gif文件,并且是一个正常生成的图像文件,一切正常。
2、
            $temp = fopen($tempFile,"rb");
            $buffer = fread($temp,filesize($tempFile));
            fclose($temp);
buffer变量已经是生成的gif文件的内容,到此也正常。
3、
            // Now zero-length the file. No need for its content anymore.
            $temp = fopen($tempFile,"w");
            fwrite($temp, NULL);
            fclose($temp);

            // Now chmod it so it can be deleted later by the user
            chmod($tempFile, 0666);
这几句是把图像文件内容清空,并且修改属性,可以看到图像的文件大小已经变成了0,也正常。
4、最后就是输出语句了:
            header("Content-type: image/gif");
            echo $buffer;
但显示出来的是一个红叉叉, :-(

我就是想不明白,为什么$buffer已经是正常的gif文件的内容了,为什么这样显示不出来呢,谁能帮帮我,十分感谢!


主題: Re: 请求帮助,关于authimage的显示问题。
作者: magicbug三月 23, 2006, 09:10:43 下午
post comment form中authimage处显示语句为:
<img src="http://administrator.domain.com/index.php?op=AuthImageShow&amp;blogId=1" style="vertical-align:middle;" width="70px" height="20px" alt="authimage" />
真的感到很奇怪,请帮我一下,谢谢!


主題: Re: 请求帮助,关于authimage的显示问题。
作者: ming三月 23, 2006, 10:15:25 下午
暫時沒有時間看你的問題...

不過你可以用 ethereal, 看看資料傳送時出了什麼錯誤

http://www.ethereal.com/



主題: Re: 请求帮助,关于authimage的显示问题。
作者: james三月 23, 2006, 10:41:16 下午
post comment form中authimage处显示语句为:
<img src="http://administrator.domain.com/index.php?op=AuthImageShow&amp;blogId=1" style="vertical-align:middle;" width="70px" height="20px" alt="authimage" />
真的感到很奇怪,请帮我一下,谢谢!
我問個很笨的問題.
請問你的網址真的是http://administrator.domain.com嗎?
還是這是你替換過的呢??

James.


主題: Re: 请求帮助,关于authimage的显示问题。
作者: markwu三月 23, 2006, 10:44:24 下午
因為你的 ./tmp 不允許讀取。被預設 ./tmp 下的 .htaccess 給封鎖了!

在  ./tmp/authimage 的目錄下加入一個 .htacess 得檔案,內容是

程式碼:
<Files "*">
 Order deny,allow
 Allow from all
</Files>

這樣應該就可以了!

Mark


主題: Re: 请求帮助,关于authimage的显示问题。
作者: magicbug三月 24, 2006, 07:49:44 上午
to ming :
那东西太复杂了,我有时间再研究,谢谢,:)

to james :
我在自己的机器上测试,是用hosts文件模拟泛域名的,效果一样。

to Mark :
不是.htaccess文件的原因。
1、tmp目录虽然有.htaccess文件,内容的确是 deny from all,但我因为在httpd.conf中设置AllowOverride None了,所以.htaccess全不起作用了,我已经把rewrite语句移到httpd.conf中了。
2、不管怎么样,$buffer的内容是正确的,我看过的,所以图像文件的内容是已经读取出来了的。现在的问题是header后,不能显示出图像,why?
3、昨天晚上后来,我在imagegif前面加上header,然后直接用 imagegif($image),把图像直接输出到屏幕上来,竟然也不成功。。。
我已经快晕了。


主題: Re: 请求帮助,关于authimage的显示问题。
作者: markwu三月 24, 2006, 11:30:16 上午
那有可能你的檔案在 header 輸出時,已經有其他 error 產生。

比較可能的是 php 的 notice error。

把 Eroor report level 調整為 E_ALL ^ E_NOTICE

然後,直接看那個 authimage 的 url ,看看圖形出不出的來,有沒有任何錯誤訊息。

沒辦法看到你的站,只能這樣猜。

Mark


主題: Re: 请求帮助,关于authimage的显示问题。
作者: magicbug三月 24, 2006, 01:41:13 下午
谢谢Mark。这问题搞得我都不好意思了。
根据你的建议,我把Eroor reporting甚至设成了E_ALL,还是没有出现什么错误信息,所以查错又进行不下去了。我把authimage plugin中的showimage()函数单独拆出来,基本不改动原有程序,存成test.php,执行,发现会显示图片,但在lt中调用就是显示不出来,问题我想肯定是出在header这儿, :'( :'(


主題: Re: 请求帮助,关于authimage的显示问题。
作者: magicbug三月 26, 2006, 10:18:20 上午
终于解决了,都是 Ultraedit BOM 惹的祸。 :-) :-)