[問題] Cash Mod 使用捐贈功能時,對方收到的私訊內容有問題

phpBB 2 MOD Support
無論是官方或非官方認證之外掛,安裝與使用問題討論。
(發表文章請按照公告格式發表,違者砍文)

版主: 版主管理群

主題已鎖定
依夢兒
竹貓忠實會員
竹貓忠實會員
文章: 2013
註冊時間: 2002-11-20 00:07

[問題] Cash Mod 使用捐贈功能時,對方收到的私訊內容有問題

文章 依夢兒 »

問題外掛:Cash Mod
參考連結:http://www.phpbb.com/phpBB/viewtopic.php?t=94055
使用版本:phpBB 2.0.20
狀況描述:

使用捐贈功能時輸入訊息,對方會收到一封私人訊息的通知,就在按 enter 斷行的部分會變成「nn」,像這樣:

依夢兒捐贈了哈囉幣 30 元給您。nn依夢兒對您說:n感謝上傳。

正常的訊息內容應該是:

依夢兒捐贈了哈囉幣 30 元給您。

依夢兒對您說:
感謝上傳。


請問是哪裡出問題了呢?煩請指導,謝謝。
有任何關於 phpBB 或是架站的問題,請在論壇上公開發表出來,大家一起討論。
請不要丟私人訊息問我,因為私訊是用來聊私事的。
這樣作對於解決您的問題一點幫助也沒有,也很沒有效率,小弟我一概謝絕。



搜尋是一種美德,在發問之前,請多加利用頂端的文章搜尋功能,搜尋可能的關鍵字。
確定您想問的問題找不到答案後,再發問。
頭像
kkt
竹貓忠實會員
竹貓忠實會員
文章: 625
註冊時間: 2005-06-15 01:37
來自: H.K.
聯繫:

文章 kkt »

To: 依夢兒前輩, 我按你上文一樣作出測試, 結果正常如下:

kkt 的訊息:
依夢兒捐贈了哈囉幣 30 元給您
依夢兒對您說:
感謝上傳

原外掛的訊息部份好像沒問題. (提供前輩參考)



.
舊站台經已結朿了, 學生們可到遊戲站玩玩 Flash Game (不必註冊) 免費 Flash Game
在此學到很多架站知識, 永遠多謝:
心靈捕手老師, ~倉木麻衣~, 依夢兒 及 神川小羽各位大大相助
頭像
心靈捕手
默默耕耘的老師
默默耕耘的老師
文章: 8510
註冊時間: 2004-04-30 01:54
來自: Taiwan

Re: [問題] Cash Mod 使用捐贈功能時,對方收到的私訊內容有問題

文章 心靈捕手 »

依夢兒 寫:問題外掛:Cash Mod
參考連結:http://www.phpbb.com/phpBB/viewtopic.php?t=94055
使用版本:phpBB 2.0.20
狀況描述:

使用捐贈功能時輸入訊息,對方會收到一封私人訊息的通知,就在按 enter 斷行的部分會變成「nn」,像這樣:

依夢兒捐贈了哈囉幣 30 元給您。nn依夢兒對您說:n感謝上傳。

正常的訊息內容應該是:

依夢兒捐贈了哈囉幣 30 元給您。

依夢兒對您說:
感謝上傳。


請問是哪裡出問題了呢?煩請指導,謝謝。
以下的修改, 提供您參考:
#
#-----[ OPEN ]-----
#
language/lang_chinese_traditional_taiwan/lang_cash.php

#
#-----[ FIND ]-----
#

代碼: 選擇全部

$lang['Has_donated'] = '%s 贈與 %s 給你。 \n\n%s 對你說:\n';
#
#-----[ REPLACE WITH ]-----
#

代碼: 選擇全部

$lang['Has_donated'] = '%s 贈與 %s 給你。 <br /><br />%s 對你說:<br />';
#
#-----[ SAVE & CLOSE ]-----
#

ps.
底下還有 3 個 '\n', 也可以取代成 '<br />'.
施比受有福,祝福您好運! ^_^
歡迎光臨★★心靈捕手★★ :: 討論區
https://wang5555.dnsfor.me/phpBB3/
依夢兒
竹貓忠實會員
竹貓忠實會員
文章: 2013
註冊時間: 2002-11-20 00:07

文章 依夢兒 »

kkt 寫:To: 依夢兒前輩, 我按你上文一樣作出測試, 結果正常如下
我以前也是正常的喲,只是不知道為什麼最近出了問題....

心靈捕手 寫:以下的修改, 提供您參考
修改之後變成這樣:

依夢兒捐贈了早安幣 15 元給您。<br><br>依夢兒對您說:<br>測試捐贈功能。

:-|
有任何關於 phpBB 或是架站的問題,請在論壇上公開發表出來,大家一起討論。
請不要丟私人訊息問我,因為私訊是用來聊私事的。
這樣作對於解決您的問題一點幫助也沒有,也很沒有效率,小弟我一概謝絕。



搜尋是一種美德,在發問之前,請多加利用頂端的文章搜尋功能,搜尋可能的關鍵字。
確定您想問的問題找不到答案後,再發問。
頭像
心靈捕手
默默耕耘的老師
默默耕耘的老師
文章: 8510
註冊時間: 2004-04-30 01:54
來自: Taiwan

文章 心靈捕手 »

依夢兒 寫:
kkt 寫:To: 依夢兒前輩, 我按你上文一樣作出測試, 結果正常如下
我以前也是正常的喲,只是不知道為什麼最近出了問題....

心靈捕手 寫:以下的修改, 提供您參考
修改之後變成這樣:

依夢兒捐贈了早安幣 15 元給您。<br><br>依夢兒對您說:<br>測試捐贈功能。

:-|
這個現象, 的確有點詭異! :-?

我之前使用時, 也是一切正常;
經您提問後, 再測試, 同樣也是出現您所提到的現象;
而修改語言檔之後, 也就恢復正常了.

ps.
修改之前, 有先解除一支外掛 Extended Private Message Notification
因為在測試時, 發現無法將私訊, 正常顯示在通知的電郵中.

建議您:
提供已經安裝過 (關於私人訊息) 的外掛名稱.
施比受有福,祝福您好運! ^_^
歡迎光臨★★心靈捕手★★ :: 討論區
https://wang5555.dnsfor.me/phpBB3/
頭像
oofishg
星球普通子民
星球普通子民
文章: 30
註冊時間: 2005-11-27 00:46

文章 oofishg »

小弟今天也是經由使用者告知,發現小弟論壇也有此一問題,但是之前是正常的..

而且小弟並未安裝心靈老師所說的外掛..




最近所安裝的應該只有更新到2.0.20.. 所以小弟懷疑是否都是更新之後才造成的問提..
瀏覽竹貓的老手,架設論壇的新手.... @@"
頭像
kkt
竹貓忠實會員
竹貓忠實會員
文章: 625
註冊時間: 2005-06-15 01:37
來自: H.K.
聯繫:

文章 kkt »

但有一個方向是肯定的, 原來的外掛上沒有問題.

要尋找是那一支外掛語法衝到了...版本升級??
舊站台經已結朿了, 學生們可到遊戲站玩玩 Flash Game (不必註冊) 免費 Flash Game
在此學到很多架站知識, 永遠多謝:
心靈捕手老師, ~倉木麻衣~, 依夢兒 及 神川小羽各位大大相助
頭像
心靈捕手
默默耕耘的老師
默默耕耘的老師
文章: 8510
註冊時間: 2004-04-30 01:54
來自: Taiwan

文章 心靈捕手 »

oofishg 寫:小弟今天也是經由使用者告知,發現小弟論壇也有此一問題,但是之前是正常的..

而且小弟並未安裝心靈老師所說的外掛..




最近所安裝的應該只有更新到2.0.20.. 所以小弟懷疑是否都是更新之後才造成的問提..
如果由您的回覆內容加以判斷
那麼我猜想:
1. 這個現象的發生和 Cash Mod 外掛無關
2. 這個現象的發生和 phpBB 2.0.19 Update 2.0.20 有關


ps.
上頭提出的外掛 Extended Private Message Notification 並不會造成這個現象.
1. 此外掛我安裝成功, 使用上也沒有問題;
2. 只是運用在 '贈與貨幣 + 傳送訊息' 時, 必須要針對 Cash Mod 再做修改而已.
施比受有福,祝福您好運! ^_^
歡迎光臨★★心靈捕手★★ :: 討論區
https://wang5555.dnsfor.me/phpBB3/
依夢兒
竹貓忠實會員
竹貓忠實會員
文章: 2013
註冊時間: 2002-11-20 00:07

文章 依夢兒 »

心靈捕手 寫:2. 這個現象的發生和 phpBB 2.0.19 Update 2.0.20 有關
我想這應該就是原因了,因為我很久沒有安裝外掛了,除了幾週前將 phpBB 更新到 2.0.20 版。
之前一直很正常,從時間上研判,應該就在更新 phpBB 後才出問題的吧?
有任何關於 phpBB 或是架站的問題,請在論壇上公開發表出來,大家一起討論。
請不要丟私人訊息問我,因為私訊是用來聊私事的。
這樣作對於解決您的問題一點幫助也沒有,也很沒有效率,小弟我一概謝絕。



搜尋是一種美德,在發問之前,請多加利用頂端的文章搜尋功能,搜尋可能的關鍵字。
確定您想問的問題找不到答案後,再發問。
頭像
心靈捕手
默默耕耘的老師
默默耕耘的老師
文章: 8510
註冊時間: 2004-04-30 01:54
來自: Taiwan

文章 心靈捕手 »

依夢兒 寫:
心靈捕手 寫:2. 這個現象的發生和 phpBB 2.0.19 Update 2.0.20 有關
我想這應該就是原因了,因為我很久沒有安裝外掛了,除了幾週前將 phpBB 更新到 2.0.20 版。
之前一直很正常,從時間上研判,應該就在更新 phpBB 後才出問題的吧?
我猜想:
問題應該是出在這個地方.

代碼: 選擇全部

# 
#-----[ OPEN ]--------------------------------------------- 
# 
includes/functions_post.php

#
#-----[ FIND ]---------------------------------------------
# Line 44
		$allowed_html_tags = split(',', $board_config['allow_html_tags']);

		$end_html = 0;
		$start_html = 1;
		$tmp_message = '';
		$message = ' ' . $message . ' ';

		while ($start_html = strpos($message, '<', $start_html))
		{
			$tmp_message .= preg_replace($html_entities_match, $html_entities_replace, substr($message, $end_html + 1, ($start_html - $end_html - 1)));

			if ($end_html = strpos($message, '>', $start_html))
			{
				$length = $end_html - $start_html + 1;
				$hold_string = substr($message, $start_html, $length);

				if (($unclosed_open = strrpos(' ' . $hold_string, '<')) != 1)
				{
					$tmp_message .= preg_replace($html_entities_match, $html_entities_replace, substr($hold_string, 0, $unclosed_open - 1));
					$hold_string = substr($hold_string, $unclosed_open - 1);
				}

				$tagallowed = false;
				for ($i = 0; $i < sizeof($allowed_html_tags); $i++)
				{
					$match_tag = trim($allowed_html_tags[$i]);
					if (preg_match('#^<\/?' . $match_tag . '[> ]#i', $hold_string))
					{
						$tagallowed = (preg_match('#^<\/?' . $match_tag . ' .*?(style[\t ]*?=|on[\w]+[\t ]*?=)#i', $hold_string)) ? false : true;
					}
				}

				$tmp_message .= ($length && !$tagallowed) ? preg_replace($html_entities_match, $html_entities_replace, $hold_string) : $hold_string;

				$start_html += $length;
			}
			else
			{
				$tmp_message .= preg_replace($html_entities_match, $html_entities_replace, substr($message, $start_html, strlen($message)));

				$start_html = strlen($message);
				$end_html = $start_html;
			}
		}

		if (!$end_html || ($end_html != strlen($message) && $tmp_message != ''))
		{
			$tmp_message .= preg_replace($html_entities_match, $html_entities_replace, substr($message, $end_html + 1));
		}

		$message = ($tmp_message != '') ? trim($tmp_message) : trim($message);

#
#-----[ REPLACE WITH ]---------------------------------------------
#
		// If HTML is on, we try to make it safe
		// This approach is quite agressive and anything that does not look like a valid tag
		// is going to get converted to HTML entities
		$message = stripslashes($message);
		$html_match = '#<[^\w<]*(\w+)((?:"[^"]*"|\'[^\']*\'|[^<>\'"])+)?>#';
		$matches = array();

		$message_split = preg_split($html_match, $message);
		preg_match_all($html_match, $message, $matches);

		$message = '';

		foreach ($message_split as $part)
		{
			$tag = array(array_shift($matches[0]), array_shift($matches[1]), array_shift($matches[2]));
			$message .= htmlspecialchars($part) . clean_html($tag);
		}

		$message = addslashes($message);
Source: phpBB 2.0.19 to phpBB 2.0.20 Code Changes -by- Acyd Burn
我將這段還原後, 也就恢復正常了.
建議您也試試.

因為, 目前官方 phpbb 支援 Cash Mod 只有到 2.0.18
而且, 我大致瀏覽了一下最近的討論串, 並沒有發現相關的問題.
ps. 呵! 呵! 只爬了 50 多頁而已. :mrgreen:
Source: http://www.phpbb.com/phpBB/viewtopic.php?t=94055
所以, 期待其他大大們的協助.
施比受有福,祝福您好運! ^_^
歡迎光臨★★心靈捕手★★ :: 討論區
https://wang5555.dnsfor.me/phpBB3/
頭像
心靈捕手
默默耕耘的老師
默默耕耘的老師
文章: 8510
註冊時間: 2004-04-30 01:54
來自: Taiwan

[分享] cash mod 2.2.3a + attach mod 2.4.3 for phpbb 2.0.20 完整包

文章 心靈捕手 »

為了要在測試論壇 phpbb 2.0.20 (utf-8) 安裝 cash mod 2.2.3a
以方便網友們測試, 所以又壓縮了一個完整包.
http://phpbb-tw.net/phpbb/viewtopic.php?p=237244#237244

--
測試論壇:
http://wang5555.dyndns.org/test/phpbb2/index.php
測試帳號 / 密碼:
goodluck / 12345678
goodluck2 / 12345678

--
測試結果:
一切正常.

--
ps.
記得 依夢兒 大大的論壇語系編碼, 應該也是早就已經轉為 utf-8 了.
這下子, 還真是有點頭大. :|
施比受有福,祝福您好運! ^_^
歡迎光臨★★心靈捕手★★ :: 討論區
https://wang5555.dnsfor.me/phpBB3/
依夢兒
竹貓忠實會員
竹貓忠實會員
文章: 2013
註冊時間: 2002-11-20 00:07

文章 依夢兒 »

心靈捕手 寫:我將這段還原後, 也就恢復正常了.
建議您也試試.
還原之後還是一樣.... :roll:

剛剛想到一個消極的解決辦法。
首先,依照心靈補手兄提供的,將語系檔中的「\n」字串更換成「<br />」。
然後,到後台的基本組態中找到「允許使用的 HTML 標籤」,在後面填入「,br」。
這樣捐贈貨幣時發送出去的私人訊息內容就正常了。(前提是論壇必須開放網友使用 HTML 語法)
有任何關於 phpBB 或是架站的問題,請在論壇上公開發表出來,大家一起討論。
請不要丟私人訊息問我,因為私訊是用來聊私事的。
這樣作對於解決您的問題一點幫助也沒有,也很沒有效率,小弟我一概謝絕。



搜尋是一種美德,在發問之前,請多加利用頂端的文章搜尋功能,搜尋可能的關鍵字。
確定您想問的問題找不到答案後,再發問。
DL
竹貓忠實會員
竹貓忠實會員
文章: 717
註冊時間: 2005-03-05 15:29

文章 DL »

http://www.phpbb-tw.net/phpbb/viewtopic ... 268#237268

似乎到了2.0.20
所有外掛發出的pm都不能用\n分行
主題已鎖定

回到「外掛問題討論」