1 頁 (共 1 頁)

[問題] 上傳頭像的大小問題

發表於 : 2005-02-04 00:48
kpw
我想要的功能應該跟一般人相反吧?

我希望能夠取消上傳頭像的大小與尺寸限制。
我看了一下,應該是改 includes/usercp_avatar.php,
但是我對整個 phpBB 的變數宣告與整體結構並不熟,
所以上來請各位幫忙。

我有很多朋友都是電腦新手,要他們把照片處理成符合格式的尺寸與大小根本是天方夜譚,但是要我一個個替他們處理也很費力,所以我想的方法是:

隨便他們上傳,然後我再用既有的外掛來限制大小。要這樣做的話,我不能將尺寸與大小設成很大的寬限值,因為要設定適切的值讓外掛使用。

請各位幫忙,謝謝。

發表於 : 2005-02-06 00:29
kpw
請大家幫個忙吧,謝謝.

發表於 : 2005-02-06 00:49
黑風凱特
你可以找找自動縮圖的外掛啊~

我記得我有在這看過~

發表於 : 2005-02-06 02:24
tom82612
黑風凱特 寫:你可以找找自動縮圖的外掛啊~

我記得我有在這看過~
取消上傳頭像的大小與尺寸限制。

發表於 : 2005-02-06 02:37
小西

發表於 : 2005-02-06 08:02
baboo
很快的看一下之後應該只有兩個地方要改... 在usercp_avatar.php 裡面,
試試看, 如果不行再回覆吧...

還有,

找這一行:

代碼: 選擇全部

if ( !$error && $avatar_filesize > 0 && $avatar_filesize < $board_config['avatar_filesize'] )
改成:

代碼: 選擇全部

//if ( !$error && $avatar_filesize > 0 && $avatar_filesize < $board_config['avatar_filesize'] )
if ( !$error && $avatar_filesize > 0 )
再找這一行:

代碼: 選擇全部

	if ( $width <= $board_config['avatar_max_width'] && $height <= $board_config['avatar_max_height'] )
改成:

代碼: 選擇全部

//if ( $width <= $board_config['avatar_max_width'] && $height <= $board_config['avatar_max_height'] )
if (true)
不過這樣改的話等於是犧牲了安全性...
如果有人拿一個500MB 大的 .jpg 檔來上傳也是可以的...
或是數千個 2MB 的小檔來上傳, 直到你空間爆滿....

還有.. 如果可以的話記得個人資料的部份用語也要改:
例: language\lang_chinese_traditional_taiwan\lang_main.php

代碼: 選擇全部

$lang['Avatar_explain'] = '您的個人頭像將會顯示在您所發表的文章旁邊. 一次只能只用一個圖檔, 寬度不可超過  %d 像素, 高度不可超過  %d 像素而且檔案大小不可超過 %dkB';

發表於 : 2005-02-07 00:04
kpw
感謝 baboo 網友的幫忙跟提醒。

基本上,這個站是我們高中同學的封閉式網站,我應該沒有那種會灌爆我網站的惡質同學 :-P

另外,尺寸限制成功取消了,但還是會限制檔案大小。

發表於 : 2005-02-07 04:43
baboo
啊, 還有一行, 上次漏掉了 :p
在usercp_avatar.php 裡面,

找這一行:

代碼: 選擇全部

if ( $avatar_filesize <= $board_config['avatar_filesize'] && $avatar_filesize > 0 )
改成:

代碼: 選擇全部

//if ( $avatar_filesize <= $board_config['avatar_filesize'] && $avatar_filesize > 0 )
if ( $avatar_filesize > 0 )
應該就好了...

發表於 : 2005-02-07 09:57
kpw
啊,還是不行耶。

發表於 : 2005-02-07 14:52
baboo
不好意思, 沒好好仔細看, 一直要你回來改...
不過這次真的是最後一個地方 :)

includes\usercp_register.php 裡面,

代碼: 選擇全部

'AVATAR_SIZE' => $board_config['avatar_filesize'],
改成

代碼: 選擇全部

//'AVATAR_SIZE' => $board_config['avatar_filesize'],
就可以了...

所以, 加上前面的,

includes\usercp_avatar.php 改三個地方:
找這一行:

代碼: 選擇全部

if ( $avatar_filesize <= $board_config['avatar_filesize'] && $avatar_filesize > 0 )
改成:

代碼: 選擇全部

//if ( $avatar_filesize <= $board_config['avatar_filesize'] && $avatar_filesize > 0 )
if ( $avatar_filesize > 0 )
再找這一行:

代碼: 選擇全部

if ( !$error && $avatar_filesize > 0 && $avatar_filesize < $board_config['avatar_filesize'] )
改成:

代碼: 選擇全部

//if ( !$error && $avatar_filesize > 0 && $avatar_filesize < $board_config['avatar_filesize'] )
if ( !$error && $avatar_filesize > 0 )
還有這一行:

代碼: 選擇全部

	if ( $width <= $board_config['avatar_max_width'] && $height <= $board_config['avatar_max_height'] )
改成:

代碼: 選擇全部

//if ( $width <= $board_config['avatar_max_width'] && $height <= $board_config['avatar_max_height'] )
if (true)
最後改 language\lang_chinese_traditional_taiwan\lang_main.php 裡面的 $lang['Avatar_explain'] 部份.

就可以了... 很破的改法, 不過能用就是了... :p

發表於 : 2005-02-07 18:30
kpw
太感謝了,完全可以了。

謝謝。