[問題]如何避免直接進論壇?(已解決)

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

版主: 版主管理群

computer315
竹貓忠實會員
竹貓忠實會員
文章: 432
註冊時間: 2005-08-22 04:56
來自: 台北市       學業: 高校生       就讀: 快樂青春學園
聯繫:

文章 computer315 »

為了好讓大家一起幫你解決問題...
請依照發問格式發言,謝謝你的支持與配合。
[必看] phpBB 使用問答區發文規則與發問格式

搜尋 是最佳解決問題最後的方法...

謝絕使用[私人訊息]來接收題問
很久沒有玩phpbb了,所以盡量不要來請教我phpbb的技術問題
不過我倒是很歡迎大家一起聊聊私事

mkcbbs~
ADSL 2M/256K架的站,速度還是可以很快的
DL
竹貓忠實會員
竹貓忠實會員
文章: 717
註冊時間: 2005-03-05 15:29

文章 DL »

關掉cookie根本沒辦法登入,更沒辦法發言,所以關閉了也沒用\r
(cookie防法可能有效)
computer315
竹貓忠實會員
竹貓忠實會員
文章: 432
註冊時間: 2005-08-22 04:56
來自: 台北市       學業: 高校生       就讀: 快樂青春學園
聯繫:

文章 computer315 »

DL 寫:關掉cookie根本沒辦法登入,更沒辦法發言,所以關閉了也沒用\r
(cookie防法可能有效)
可以訪客發言...= =+
為了好讓大家一起幫你解決問題...
請依照發問格式發言,謝謝你的支持與配合。
[必看] phpBB 使用問答區發文規則與發問格式

搜尋 是最佳解決問題最後的方法...

謝絕使用[私人訊息]來接收題問
很久沒有玩phpbb了,所以盡量不要來請教我phpbb的技術問題
不過我倒是很歡迎大家一起聊聊私事

mkcbbs~
ADSL 2M/256K架的站,速度還是可以很快的
aj4w6
星球公民
星球公民
文章: 101
註冊時間: 2006-01-14 16:08
聯繫:

文章 aj4w6 »

http://phpbb-tw.net/phpbb/viewtopic.php?p=224036#224036
http://phpbb-tw.net/phpbb/viewtopic.php?p=223912#223912
這2個連結說的做法是主網頁和論壇都在支援php和sql的狀況下.

我的狀況是主網站不支援php/sql,論壇才支援php/sql.

謝謝大家的費心了!![/url]
~倉木麻衣~
竹貓忠實會員
竹貓忠實會員
文章: 1405
註冊時間: 2004-03-21 21:00

文章 ~倉木麻衣~ »

其實是可以把那些修改全弄到overall_header.php裡來做
新增資料庫的部份就不再多說了

底下是假設主站位置為:
http://www.freepgs.com/sabcat/a.htm
論壇位置為:
http://sabcat.php2h.com/phpBB218/
使用者必須先造訪過freepgs, 並透過a.htm裡的連結前往php2h的論論
請自行替換藍字及紅字部份為你的主網站位置, 並特別注意紅字部份的寫法
#
#--------[ OPEN ]----------------
#
includes/page_header.php

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

代碼: 選擇全部

$template->pparse('overall_header');
#
#--------[ BEFORE, ADD ]----------------
#
if ( !$userdata['session_visited'] && !preg_match("#www\.freepgs\.com/sabcat/#i",$HTTP_SERVER_VARS['HTTP_REFERER']) )
{
header ("Location: http://www.freepgs.com/sabcat/a.htm");
exit;
}
elseif ( preg_match("#www\.freepgs\.com/sabcat/#i",$HTTP_SERVER_VARS['HTTP_REFERER']) )
{
$sql = "UPDATE " . SESSIONS_TABLE . " SET session_visited = 1 WHERE session_id = '" . $userdata['session_id'] . "'";
if ( !($result = $db->sql_query($sql)) )
{
message_die(CRITICAL_ERROR, 'Error doing DB query userdata row fetch', '', __LINE__, __FILE__, $sql);
}
}
#
#--------[ SAVE/CLOSE FILE]----------------
#
# EoM

經過測試, 就算會員有使用自動登入的功能也一樣會先被導向主網站
最後由 ~倉木麻衣~ 於 2006-02-11 11:12 編輯,總共編輯了 1 次。
謝絕所有私人訊息詢問外掛相關問題
有問題請直接於版上發表, 集思廣議絕對比專挑特定人士詢問來的好

竹貓禁止發表含破解相關的軟體, 違者砍文
不要跟我講別的地方都可以發, 為什麼竹貓就不行
免費不等於破解, 傻傻的搞不清楚
DL
竹貓忠實會員
竹貓忠實會員
文章: 717
註冊時間: 2005-03-05 15:29

文章 DL »

computer315 寫:
DL 寫:關掉cookie根本沒辦法登入,更沒辦法發言,所以關閉了也沒用\r
(cookie防法可能有效)
可以訪客發言...= =+
可以限制訪客發言...
aj4w6
星球公民
星球公民
文章: 101
註冊時間: 2006-01-14 16:08
聯繫:

文章 aj4w6 »

倉木麻衣您好
讓您費心了,耽誤了您寶貴的時間

按照您的教導我修改了page_header.php結果如下:
1.使用[我的最愛]或直接複製論壇網址的確會被導向主網站OK
2.從主網站連結進入論壇時,也同樣的被導向主網站,所以就一直在那打轉轉,無法進入論壇了!!!
~倉木麻衣~
竹貓忠實會員
竹貓忠實會員
文章: 1405
註冊時間: 2004-03-21 21:00

文章 ~倉木麻衣~ »

page_header.php裡的網址你是怎麼設定的?
會出現這種狀況, 應該是你這一段藍字部份的判斷有問題
preg_match("#www\.freepgs\.com/sabcat/#i",$HTTP_SERVER_VARS['HTTP_REFERER'])

剛又看了一次首篇的問題內容, 發現你的主頁是放在seednet
seednet有做負載平衡, 所以連過去後, 它的url會跳\r
例如主頁網址是http://homepage.seed.net.tw/web/abc123/
實際連過去後卻會變成http://homepage20.seed.net.tw/web@3/abc123/
其中, homepage之後的數字會跳, @之後的數字忘了是否為固定值\r
所以要判斷的話, 可能得改寫成
preg_match("#homepage(\d)+\.seed\.net\.tw/web@\d+/abc123/#i",$HTTP_SERVER_VARS['HTTP_REFERER'])
謝絕所有私人訊息詢問外掛相關問題
有問題請直接於版上發表, 集思廣議絕對比專挑特定人士詢問來的好

竹貓禁止發表含破解相關的軟體, 違者砍文
不要跟我講別的地方都可以發, 為什麼竹貓就不行
免費不等於破解, 傻傻的搞不清楚
*tytsim*
竹貓忠實會員
竹貓忠實會員
文章: 411
註冊時間: 2005-03-24 11:54
來自: 香港
聯繫:

文章 *tytsim* »

那人們不開javascipt就沒用呀!
 網絡鎮
    關於網絡的
http://tytsim.net.ru  一個網絡鎮
頭像
jwxie
竹貓忠實會員
竹貓忠實會員
文章: 604
註冊時間: 2005-11-26 12:02
來自: New York, USA   學業狀況: 更加努力     個人狀況: ||地獄臭蛋|| 
聯繫:

文章 jwxie »

*tytsim* 寫:那人們不開javascipt就沒用呀!
這種情況應該不會經常發生在IE.....

再問大大, 我之前提過的建議, 通過認證, 是否倉大你所提出的方法呢?
就是靠

preg_match:

" SET session_visited = 1 WHERE session_id = '" . $userdata['session_id'] .
來自動判斷是否通過preg_match位置進入吧?

目前本人帳號嚴重地被盜用!MSN已經被盜!

想問個問題並不打擾, 但沒有發文格式, 其他人不能知道你的情況!
請尊守竹貓各區裡的發文格式, 謝謝合作!
[必看]請配合發問格式及明確主題發問(04 02/16更新) phpBB!
所有新手必看的
[教學]認識、安裝和參考PHPBB的新手基本教學通
PS:感謝各位大大的幫助和教導^^
Q168.net空間技術交流

個人小品(Blog)My phpBB-Blog免費空間討論區
~倉木麻衣~
竹貓忠實會員
竹貓忠實會員
文章: 1405
註冊時間: 2004-03-21 21:00

文章 ~倉木麻衣~ »

jwxie 寫:
*tytsim* 寫:那人們不開javascipt就沒用呀!
這種情況應該不會經常發生在IE.....

再問大大, 我之前提過的建議, 通過認證, 是否倉大你所提出的方法呢?
就是靠

preg_match:

" SET session_visited = 1 WHERE session_id = '" . $userdata['session_id'] .
來自動判斷是否通過preg_match位置進入吧?
你的想法是利用Javascript及cookie, 與我的作法其實有類似\r
只是你的判斷屬於客戶端的, 而我的作法是屬伺服端\r
要略過客戶端的判斷其實很容易, 就如同上面講的, 我不要開啟Javascript或關閉cookie功能就好了(通常關閉Javascript就可達到效果)

至於判斷的原理嘛, 正確來講是判斷它的來源頁(或稱參照頁)
在PHP裡要取得來源頁, 可以使用$HTTP_SERVER['REFERER']
至於perg_match()則是用來判斷$HTTP_SERVER['REFERER']裡是否有符合搜尋的目標
用法可參考http://www.php.net/manual/tw/function.preg-match.php
當判斷成立時(即表示你是經由主網站連接過來)
則更新你的session資料表, 並設置判斷是否經由主網站的判斷旗標(session_visited)值為1
這部份就類似你講的用cookie來確認是否通過認證
謝絕所有私人訊息詢問外掛相關問題
有問題請直接於版上發表, 集思廣議絕對比專挑特定人士詢問來的好

竹貓禁止發表含破解相關的軟體, 違者砍文
不要跟我講別的地方都可以發, 為什麼竹貓就不行
免費不等於破解, 傻傻的搞不清楚
aj4w6
星球公民
星球公民
文章: 101
註冊時間: 2006-01-14 16:08
聯繫:

文章 aj4w6 »

倉木麻衣您好:
底下是假設主站位置為:
http://www.freepgs.com/sabcat/a.htm
論壇位置為:
http://sabcat.php2h.com/phpBB218/
請自行替換藍字部份為你的主網站位置, perg_match裡的紅字為你論壇的位置

代碼: 選擇全部

if ( !$userdata['session_visited'] && !preg_match("#論壇網?#125;/#i",$HTTP_SERVER_VARS['HTTP_REFERER']) )
{                                                                                                                            
header ("Location:主網網?#125;");                      
exit;                                                                                                                        
}                                                                                                                            
elseif ( preg_match("#論壇網?#125;/#i",$HTTP

所以要判斷的話, 可能得改寫成 elseif ( preg_match("#主網網址/#i",$HTTP

請問是否前後矛盾?
我的主網站http://homepage13.seed.net.tw/web@5/aj4w6/index.htm
主網站使用的轉址http://baeduh.7-11.bz
我的論壇http://abcde.php2h.com/phpBB/

seednet現在不會跳,您可以輸入轉址試試
我昨天修改如下:

代碼: 選擇全部

if ( !$userdata['session_visited'] && !preg_match("#abcde\.php2h\.com/phpBB/#i",$HTTP                                 
{                                                                                                                            
header ("Location: http://baeduh.7-11.bz");                                                                                  
exit;                                                                                                                        
}                                                                                                                            
elseif ( preg_match("#abcde\.php2h\.com/phpBB/#i",$HTTP


P.S.不必考慮像您們這些高手的問題,遇到高手,就算加上八卦迷魂陣
也擋不住.
~倉木麻衣~
竹貓忠實會員
竹貓忠實會員
文章: 1405
註冊時間: 2004-03-21 21:00

文章 ~倉木麻衣~ »

我剛才發現前文的說明有地方講錯了, 造成你設定上的錯誤
麻煩請再回去確認一下

另外, 你的轉址是用框架頁的方式
那麼來源頁的判斷可能會有不同
建議先在seednet主機上建一個可連到php2h的html網頁
假設seednet上的為a.htm, 連到php2h裡的a.php
然後在php2h上建立a.php, 內容為\r

代碼: 選擇全部

<?
echo $_SERVER['HTTP_REFERER'];
?>
接著使用 http://轉址/a.htm 去連php2h的a.php, 以確認其來源頁為何
謝絕所有私人訊息詢問外掛相關問題
有問題請直接於版上發表, 集思廣議絕對比專挑特定人士詢問來的好

竹貓禁止發表含破解相關的軟體, 違者砍文
不要跟我講別的地方都可以發, 為什麼竹貓就不行
免費不等於破解, 傻傻的搞不清楚
aj4w6
星球公民
星球公民
文章: 101
註冊時間: 2006-01-14 16:08
聯繫:

文章 aj4w6 »

我剛才發現前文的說明有地方講錯了, 造成你設定上的錯誤
麻煩請再回去確認一下

正確的修改方式是否如下??

代碼: 選擇全部

if ( !$userdata['session_visited'] && !preg_match("#論壇網?#125;/#i",$HTTP    
{                                                                               
header ("Location:主網網?#125;");                                                   
exit;                                                                           
}                                                                               
elseif ( preg_match("#主網網?#125;/#i",$HTTP 
建議先在seednet主機上建一個可連到php2h的html網頁
假設seednet上的為a.htm, 連到php2h裡的a.php

我目前的連結方法如下:

代碼: 選擇全部

轉?#125;---主網站.htm---論壇.php

請問您的意思是否如下??

代碼: 選擇全部

轉?#125;A---主網站.htm---轉?#125;B---a.htm---a.php---論壇.php

請問a.php是否開UltraEdit只要寫下面三行字,再存成.php檔即可??

代碼: 選擇全部

<?                                                                        
echo $_SERVER['REFERER'];                                                       
?>

再問a.php檔要放在phpBB下面嗎?
Sorry給您添太多麻煩了!!
~倉木麻衣~
竹貓忠實會員
竹貓忠實會員
文章: 1405
註冊時間: 2004-03-21 21:00

文章 ~倉木麻衣~ »

aj4w6 寫:正確的修改方式是否如下??

代碼: 選擇全部

if ( !$userdata['session_visited'] && !preg_match("#論壇網?#125;/#i",$HTTP
{
header ("Location:主網網?#125;");
exit;
}
elseif ( preg_match("#主網網?#125;/#i",$HTTP 
http://phpbb-tw.net/phpbb/viewtopic.php?p=227137#227137
請自行替換藍字及紅字部份為你的主網站位置, 並特別注意紅字部份的寫法
aj4w6 寫:請問a.php是否開UltraEdit只要寫下面三行字,再存成.php檔即可??

代碼: 選擇全部

<?
echo $_SERVER['HTTP_REFERER'];
?>
再問a.php檔要放在phpBB下面嗎?
yes
要放那邊隨你高興, 只要連的到就好\r

另外, 你把測試的流程想的太複雜了
如果真的不會弄, 那就在你主網站裡多加一個連結, 連到php2h上的a.php就好
這樣就不需要再去建a.htm及b.htm
最後由 ~倉木麻衣~ 於 2006-02-11 16:24 編輯,總共編輯了 1 次。
謝絕所有私人訊息詢問外掛相關問題
有問題請直接於版上發表, 集思廣議絕對比專挑特定人士詢問來的好

竹貓禁止發表含破解相關的軟體, 違者砍文
不要跟我講別的地方都可以發, 為什麼竹貓就不行
免費不等於破解, 傻傻的搞不清楚
主題已鎖定

回到「外掛問題討論」