●問題MOD:last_visit_1.2.10em
●上網方式: 學術網路
●架設主機作業系統:WindowsXP SP2
●安裝的程式:Apache_2.0.59-Openssl_0.9.8d-Win32+ phpMyAdmin - 2.9.1.1+ php-5.2.0-win32 + mysql-essential-4.1.21
我的伺服器環境因為是學校電腦...他原本就是設定php 5
我沒有權限更改...因為還有另外一套網頁為原安裝者負責
抱歉!...沒法更換成php4環境
●我的 phpBB2 版本:phpBB2 2.0.21
●問題:
我有按照安裝文件上的步驟
# This MOD needs a database update.
#
# copy last_visit_update.php to /phpbbRootDir/last_visit_update.php
#
# Once you have copied the above file to your phpBB root
# directory, run it with your navigator as shown below...
#
# http://www.yourWebSite.xxx/phpbbRootDir ... update.php
問題是...他更新完成...會顯示什麼嗎?...我只有白白一片...正常嗎?
接著改了很多文件上傳
登入首頁卻出現
-------------------------------------------------------------------------
phpBB : Critical Error
Error updating sessions table
DEBUG MODE
SQL Error : 1054 Unknown column 'user_totalpages' in 'field list'
UPDATE phpbb_users SET user_session_time = 1168349630, user_session_page = 0, user_totalpages = user_totalpages+1, user_totaltime = user_totaltime+(1168349630-1168349475) WHERE user_id = 14
Line : 366
File : sessions.php
-------------------------------------------------------------------------------
這是我的sessions.php檔案網址
http://wecare.yzu.edu.tw/mentor/phpBB2/ ... ssions.rar
能煩請幫我看一下原因嗎?
[問題]last_visit_1.2.10 SQL Error[已解決]
版主: 版主管理群
[問題]last_visit_1.2.10 SQL Error[已解決]
最後由 ghostx2 於 2007-01-09 23:55 編輯,總共編輯了 1 次。
Re: [問題]last_visit_1.2.10 SQL Error
姑且不去設想是 PHP5 影響, 或者 sessions.php 修改錯誤,ghostx2 寫:●問題:
我有按照安裝文件上的步驟
# This MOD needs a database update.
#
# copy last_visit_update.php to /phpbbRootDir/last_visit_update.php
#
# Once you have copied the above file to your phpBB root
# directory, run it with your navigator as shown below...
#
# http://www.yourWebSite.xxx/phpbbRootDir ... update.php
問題是...他更新完成...會顯示什麼嗎?...我只有白白一片...正常嗎?
接著改了很多文件上傳
登入首頁卻出現
-------------------------------------------------------------------------
phpBB : Critical Error
Error updating sessions table
DEBUG MODE
SQL Error : 1054 Unknown column 'user_totalpages' in 'field list'
UPDATE phpbb_users SET user_session_time = 1168349630, user_session_page = 0, user_totalpages = user_totalpages+1, user_totaltime = user_totaltime+(1168349630-1168349475) WHERE user_id = 14
Line : 366
File : sessions.php
依您執行資料庫更新檔產生空白頁, 以及這個錯誤訊息判斷,
您的資料庫更新並未完成,
也就是說, 關於此外掛所需要的欄位, 並未建立.
印象中此外掛升級到 1.2.9 之後已經
移除資料庫更新檔 (last_visit_update.php), 將 SQL 指令, 直接寫入安裝說明
http://phpbb-tw.net/phpbb/viewtopic.php?p=226043#226043## MOD History:
##
## 2006-01-12 - Version 1.2.9
## - phpBB template & EasyMOD compliance enhancement
## - Upgrade the instructions to be phpBB 2.0.19 compliant
## - Include the sql queries in the MOD and remove the
## last_visit_db_update.php file
## - Add DIY instructions to install other languages than English
## - Use the INCREMENT instruction to increment the
## whosonline.gif rowspan
不過我剛剛重新下載 1.2.10
卻發現它的安裝說明有更新, 而且的確加了資料庫更新檔 (last_visit_update.php)
http://www.phpbbhacks.com/download/237##############################################################
##
## MOD History:
##
## 2006-06-30 - Version 1.2.10
## - phpBB template & EasyMOD compliance enhancement
## - Upgrade the instructions to be phpBB 2.0.21 compliant
##
## 2005-12-16 - Version 1.2.9
## - phpBB template & EasyMOD compliance enhancement
## - Upgrade the instructions to be phpBB 2.0.19 compliant
##
如果說執行資料庫更新檔 (last_visit_update.php) 有困難的話
那麼建議您:
進入 phpMyAdmin
找到論壇資料庫後
試試執行下列 SQL 指令.
代碼: 選擇全部
ALTER TABLE phpbb_users ADD user_lastlogon INT (11) DEFAULT '0' not null;
ALTER TABLE phpbb_users ADD user_totaltime INT (11) DEFAULT '0';
ALTER TABLE phpbb_users ADD user_totallogon INT (11) DEFAULT '0';
ALTER TABLE phpbb_users ADD user_totalpages INT (11) DEFAULT '0';
INSERT INTO phpbb_config (config_name, config_value) VALUES ('hidde_last_logon','0');
UPDATE phpbb_users SET user_lastlogon = user_lastvisit WHERE user_lastlogon = '0';
UPDATE phpbb_users SET user_totallogon = '1' WHERE user_totallogon = '0' AND user_session_time <> '0';
UPDATE phpbb_users SET user_totaltime = (user_session_time - user_lastlogon) WHERE user_totaltime = '0' AND user_lastlogon > '0';
http://phpbb-tw.net/phpbb/viewtopic.php?p=226062#226062
找到問題點
-----------------------------------------------------------------------------
錯誤
SQL 語法:
ALTER TABLE phpbb_users ADD user_lastlogon INT( 11 ) DEFAULT '0' NOT NULL ;
MySQL 傳回:
#1060 - Duplicate column name 'user_lastlogon'
-----------------------------------------------------------------------------
所以不能整個
last_visit_update.php執行
所以我
只有
打上
--------------------------------------------------------------------
ALTER TABLE phpbb_users ADD user_totaltime INT (11) DEFAULT '0';
ALTER TABLE phpbb_users ADD user_totallogon INT (11) DEFAULT '0';
ALTER TABLE phpbb_users ADD user_totalpages INT (11) DEFAULT '0';
INSERT INTO phpbb_config (config_name, config_value) VALUES ('hidde_last_logon','0');
UPDATE phpbb_users SET user_lastlogon = user_lastvisit WHERE user_lastlogon = '0';
UPDATE phpbb_users SET user_totallogon = '1' WHERE user_totallogon = '0' AND user_session_time <> '0';
UPDATE phpbb_users SET user_totaltime = (user_session_time - user_lastlogon) WHERE user_totaltime = '0' AND user_lastlogon > '0';
--------------------------------------------------------------------
一個問題就解決了
-----------------------------------------------------------------------------
錯誤
SQL 語法:
ALTER TABLE phpbb_users ADD user_lastlogon INT( 11 ) DEFAULT '0' NOT NULL ;
MySQL 傳回:
#1060 - Duplicate column name 'user_lastlogon'
-----------------------------------------------------------------------------
所以不能整個
last_visit_update.php執行
所以我
只有
打上
--------------------------------------------------------------------
ALTER TABLE phpbb_users ADD user_totaltime INT (11) DEFAULT '0';
ALTER TABLE phpbb_users ADD user_totallogon INT (11) DEFAULT '0';
ALTER TABLE phpbb_users ADD user_totalpages INT (11) DEFAULT '0';
INSERT INTO phpbb_config (config_name, config_value) VALUES ('hidde_last_logon','0');
UPDATE phpbb_users SET user_lastlogon = user_lastvisit WHERE user_lastlogon = '0';
UPDATE phpbb_users SET user_totallogon = '1' WHERE user_totallogon = '0' AND user_session_time <> '0';
UPDATE phpbb_users SET user_totaltime = (user_session_time - user_lastlogon) WHERE user_totaltime = '0' AND user_lastlogon > '0';
--------------------------------------------------------------------
一個問題就解決了

