各位版友好,
我日前架設了phpbb3,自己在內網測試功能。
想請教有關於文章頁面右上角的「寄給朋友」功能。
我試了一下,它只能一次填上一個人的e-mail,不知道是否有可能改為像是yahoo新聞or聯合新聞網的那種「將新聞網頁轉寄給朋友」的功能,用逗號區隔email address,然後一次可以寄給多人呢? (底下附上畫面)
除此之外,我還想請問,若我有一台mail server能提供ldap e-mail address book,是否能夠將「寄給朋友」這個功能,進行連結到ldap e-mail address book,方便在想寄給朋友時,能直接自帶mail address呢?
感謝各位!
------------
●主機作業系統:CentOS5
●快速架站程式:none.
●免費(或付費)空間連結: 內網
●您的上網方式:內網
●您安裝的程式:Apache + php + MySql
●您的 phpBB 版本:phpBB 3.0.10
●您的 domain (網域名稱) :none
●您的 phpBB 連結網址: 內網
請教文章頁面右上角的「寄給朋友」功能
版主: 版主管理群
Re: 請教文章頁面右上角的「寄給朋友」功能
關於無法一次鍵入多個mail address的問題,我想應該是底下這段寫在memberlist.php檔案中的code在檢驗的:
由於我的不懂php 語法,可否有高人可以指點一下,我是否可以在此修改,讓我在「寄給朋友」的功能中,可以輸入多個mail address 呢? 感謝!
================
「get_preg_expression」的code如下,可否有高手可以教一下,該如何更改它,讓它可以一次輸入多個email address 呢?
代碼: 選擇全部
if (!$email || !preg_match('/^' . get_preg_expression('email') . '$/i', $email))
{
$error[] = $user->lang['EMPTY_ADDRESS_EMAIL'];
}
「get_preg_expression」的code如下,可否有高手可以教一下,該如何更改它,讓它可以一次輸入多個email address 呢?
代碼: 選擇全部
function get_preg_expression($mode)
2782 {
2783 switch ($mode)
2784 {
2785 case 'email':
2786 return '(?:[a-z0-9\'\.\-_\+\|]++|&)+@[a-z0-9\-]+\.(?:[a-z0-9\-]+\.)*[a-z]+';
2787 break;
2788
2789 case 'bbcode_htm':
2790 return array(
2791 '#<!\-\- e \-\-><a href="mailto:(.*?)">.*?</a><!\-\- e \-\->#',
2792 '#<!\-\- l \-\-><a (?:class="[\w-]+" )?href="(.*?)(?:(&|\?)sid=[0-9a-f]{32})?">.*?</a><!\-\- l \-\->#',
2793 '#<!\-\- ([mw]) \-\-><a (?:class="[\w-]+" )?href="(.*?)">.*?</a><!\-\- \1 \-\->#',
2794 '#<!\-\- s(.*?) \-\-><img src="\{SMILIES_PATH\}\/.*? \/><!\-\- s\1 \-\->#',
2795 '#<!\-\- .*? \-\->#s',
2796 '#<.*?>#s',
2797 );
2798 break;
2799
2800 // Whoa these look impressive!
2801 // The code to generate the following two regular expressions which match valid IPv4/IPv6 addresses
2802 // can be found in the develop directory
2803 case 'ipv4':
2804 return '#^(?:(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.){3}(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$#';
2805 break;
2806
2807 case 'ipv6':
2808 return '#^(?:(?:(?:[\dA-F]{1,4}:){6}(?:[\dA-F]{1,4}:[\dA-F]{1,4}|(?:(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.){3}(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])))|(?:::(?:[\dA-F]{1,4}:){5}(?:[\dA-F]{1,4}:[\dA-F]{1,4}|(?:(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.){3}(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])))|(?:(?:[\dA-F]{1,4}:):(?:[\dA-F]{1,4}:){4}(?:[\dA-F]{1,4}:[\dA-F]{1,4}|(?:(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.){3}(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])))|(?:(?:[\dA-F]{1,4}:){1,2}:(?:[\dA-F]{1,4}:){3}(?:[\dA-F]{1,4}:[\dA-F]{1,4}|(?:(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.){3}(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])))|(?:(?:[\dA-F]{1,4}:){1,3}:(?:[\dA-F]{1,4}:){2}(?:[\dA-F]{1,4}:[\dA-F]{1,4}|(?:(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.){3}(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])))|(?:(?:[\dA-F]{1,4}:){1,4}:(?:[\dA-F]{1,4}:)(?:[\dA-F]{1,4}:[\dA-F]{1,4}|(?:(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.){3}(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])))|(?:(?:[\dA-F]{1,4}:){1,5}:(?:[\dA-F]{1,4}:[\dA-F]{1,4}|(?:(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.){3}(?:\d{1,2}|1\d\d|2[0-4]\d|25[0-5])))|(?:(?:[\dA-F]{1,4}:){1,6}:[\dA-F]{1,4})|(?:(?:[\dA-F]{1,4}:){1,7}:))$#i';
2809 break;
2810
2811 case 'url':
2812 case 'url_inline':
2813 $inline = ($mode == 'url') ? ')' : '';
2814 $scheme = ($mode == 'url') ? '[a-z\d+\-.]' : '[a-z\d+]'; // avoid automatic parsing of "word" in "last word.http://..."
2815 // generated with regex generation file in the develop folder
2816 return "[a-z]$scheme*:/{2}(?:(?:[a-z0-9\-._~!$&'($inline*+,;=:@|]+|%[\dA-F]{2})+|[0-9.]+|\[[a-z0-9.]+:[a-z0-9.]+:[a-z0-9.:]+\])(?::\d*)?(?:/(?:[a-z0-9\-._~!$&'($inline*+,;=:@|]+|%[\dA-F]{2})*)*(?:\?(?:[a-z0-9\-._~!$&'($inline*+,;=:@/?|]+|%[\dA-F]{2})*)?(?:\#(?:[a-z0-9\-._~!$&'($inline*+,;=:@/?|]+|%[\dA-F]{2})*)?";
2817 break;
2818
2819 case 'www_url':
2820 case 'www_url_inline':
2821 $inline = ($mode == 'www_url') ? ')' : '';
2822 return "www\.(?:[a-z0-9\-._~!$&'($inline*+,;=:@|]+|%[\dA-F]{2})+(?::\d*)?(?:/(?:[a-z0-9\-._~!$&'($inline*+,;=:@|]+|%[\dA-F]{2})*)*(?:\?(?:[a-z0-9\-._~!$&'($inline*+,;=:@/?|]+|%[\dA-F]{2})*)?(?:\#(?:[a-z0-9\-._~!$&'($inline*+,;=:@/?|]+|%[\dA-F]{2})*)?";
2823 break;
2824
2825 case 'relative_url':
2826 case 'relative_url_inline':
2827 $inline = ($mode == 'relative_url') ? ')' : '';
2828 return "(?:[a-z0-9\-._~!$&'($inline*+,;=:@|]+|%[\dA-F]{2})*(?:/(?:[a-z0-9\-._~!$&'($inline*+,;=:@|]+|%[\dA-F]{2})*)*(?:\?(?:[a-z0-9\-._~!$&'($inline*+,;=:@/?|]+|%[\dA-F]{2})*)?(?:\#(?:[a-z0-9\-._~!$&'($inline*+,;=:@/?|]+|%[\dA-F]{2})*)?";
2829 break;
2830 }
2831
2832 return '';
2833 }Re: 請教文章頁面右上角的「寄給朋友」功能
依經驗,若要寄給多位朋友,則以利用郵件伺服器的通訊錄,比較適宜。

