LifeType 中文開發論壇

支援 => 安裝與設定 => 主題作者是: LiP 於 四月 18, 2005, 06:35:33 下午



主題: 請教關於 blogslist 的排序方式....
作者: LiP四月 18, 2005, 06:35:33 下午
Dear all~

請問在 pLog 1.0 中 "網誌列表"的排序方式是依照何種方式排序?
userlist 很明顯就是依照註冊ID來排序....
可是直接看"網誌列表"....不是依照字母....也不是依照ID....也不是依照網誌更新....
如果"網誌列表"想要改為ID排序,需要如何修改?

感謝~ :'(


主題: 請教關於 blogslist 的排序方式....
作者: TomexOu四月 18, 2005, 07:43:46 下午
我先實際改過,
但可能方向是改/class/dao/blogxxx.php.class內method有關
也跟db該table name有關,
用這幾個字搜尋該class檔,
應該可找到其sql指令再自己order by一樣。

可能你要自己找一下,
否則別人也是要這樣找...費力!
過程裏,你也會更了解plog的class佈署方式喔....


主題: 請教關於 blogslist 的排序方式....
作者: TomexOu四月 18, 2005, 07:44:55 下午
我不太了解smarty有否支援排序,或許在template的smarty語法中也有排序
先找template,再去找class。


主題: Re: 請教關於 blogslist 的排序方式....
作者: markwu四月 19, 2005, 11:58:28 上午
引用自: LiP
Dear all~

請問在 pLog 1.0 中 "網誌列表"的排序方式是依照何種方式排序?
userlist 很明顯就是依照註冊ID來排序....
可是直接看"網誌列表"....不是依照字母....也不是依照ID....也不是依照網誌更新....
如果"網誌列表"想要改為ID排序,需要如何修改?

感謝~ :'(


他是按照字母來排序!目前要以 ID, mmm.... 恐怕沒辦法!因為 Smarty 中也沒有 ordering 或是 sort 的 filter 或功能。

Mark


主題: 請教關於 blogslist 的排序方式....
作者: markwu四月 19, 2005, 12:05:00 下午
可以順便參考一下這一篇:

http://www.phpinsider.com/smarty-forum/viewtopic.php?t=5047&highlight=sort

Smarty 的設計理念就是 template engine 而已,所以他不是則處理任何資料『結構』上的問題。

所以如果要 sort by id,可能要改 core 吧!

Mark


主題: Re: 請教關於 blogslist 的排序方式....
作者: LiP四月 19, 2005, 12:52:07 下午
我比較好奇的是....
因為目前的測試站裡頭 "網誌列表" 的排序應該是字母排序沒錯,但是字母排序中間又有中文名稱的網誌在列表裡面....一串英文....一串中文....所以才會有這樣的疑問....不知道各位的網誌排序是否有這樣的情況?

引用自: markwu


他是按照字母來排序!目前要以 ID, mmm.... 恐怕沒辦法!因為 Smarty 中也沒有 ordering 或是 sort 的 filter 或功能。

Mark


主題: Re: 請教關於 blogslist 的排序方式....
作者: evenrain四月 20, 2005, 03:49:42 下午
引用自: LiP
我比較好奇的是....
因為目前的測試站裡頭 "網誌列表" 的排序應該是字母排序沒錯,但是字母排序中間又有中文名稱的網誌在列表裡面....一串英文....一串中文....所以才會有這樣的疑問....不知道各位的網誌排序是否有這樣的情況?


中文名稱的 blog 應該是用第一個中文的第一碼進去排的吧,
所以會有中英文夾雜的狀況是正常的  ;-)


主題: Re: 請教關於 blogslist 的排序方式....
作者: LiP四月 20, 2005, 04:16:53 下午
ㄟ....不好意思....不太明白這意思....也許我說明的不夠詳細....

如果是按照字母排列的話,是否應該a,b,c,d,e,f,g....結束之後才輪到中文符號或文字的排序?但是我的 pLog 上頭並不是這樣....

今天一早終於讓 無限誌 更新到 pLog 1.0 正式啟用了,網誌列表目前顯示的就是我敘述的情況....

http://blog.poweros.net

這並沒有造成什麼問題....只是我很好奇,也搞不太清楚是什麼原因....
或者....這樣就是正常的排序?

引用自: evenrain

中文名稱的 blog 應該是用第一個中文的第一碼進去排的吧,
所以會有中英文夾雜的狀況是正常的  ;-)


主題: 請教關於 blogslist 的排序方式....
作者: markwu四月 20, 2005, 04:32:10 下午
Hi LiP:

參考一下這篇文章!http://dev.mysql.com/tech-resources/articles/4.1/unicode.html

目前彙整網頁的的 Blog List 是由 blogs.class.php 的 getAllBlogs() 來取出,中間有一段 SQL:

引用
$query = "SELECT * FROM ".$this->getPrefix()."blogs $where ORDER BY blog $limits";


根據上面文章的說法, Mysql 4.0 並無法正確的 sorting UTF-8 的資料,要到 4.1 才有辦法。所以即使 pLog 用了對的 SQL 語法,但因為你的 Mysql Server 而傳回錯誤的結果。所以可能是這個原因吧。

說不定用 Big5 或  GB2312 就沒這樣的問題了! :P

Mark


主題: 請教關於 blogslist 的排序方式....
作者: darkhero四月 20, 2005, 04:37:16 下午
剛剛去 trace 了 summery 相關的程式碼...
追到了 class/dao/blogs.class.php 之中...
function getAllBlogs
當中的 Order by 是
"ORDER BY blog"

參照 mysql 中得資料... "blog 欄位" 就是 該 blog 的名稱.

而以 mysql 來排序的..所以或許是以 blog 名稱 的第一個 位元碼 進行排序....

當然..這邊可以修改成為
    Order by id ,從第一個建立的 blog 開始排.
    Order by id Desc 從最後一個建立的 blog 開始排.
    Order by owner_id, 從第一個加入使用者開始排序
    Order by owner_id Desc , 從最後一個加入的使用者開始排序[/list:u]

    或許對某些網站來說..以 建立的 blog 先後進行排序是個不錯的排序方式...


主題: Re: 請教關於 blogslist 的排序方式....
作者: evenrain四月 20, 2005, 04:43:32 下午
引用自: LiP
ㄟ....不好意思....不太明白這意思....也許我說明的不夠詳細....

如果是按照字母排列的話,是否應該a,b,c,d,e,f,g....結束之後才輪到中文符號或文字的排序?但是我的 pLog 上頭並不是這樣....


我的意思是中文字是雙位元,所以排序的時候「也許」是取第一個位元出來排,
有些中文字的第一個位元拆出來會是英文,
所以或許是這個原因造成中英文混雜排列。

不過我沒經過查證,純粹是提出一個可能性 :p


主題: 請教關於 blogslist 的排序方式....
作者: LiP四月 20, 2005, 04:50:40 下午
Soga....原來是這麼一回事....

感謝諸位的回覆以及解答∼
有時間我會試著改看看再來回報....
3Q∼


主題: 請教關於 blogslist 的排序方式....
作者: evenrain四月 20, 2005, 05:12:35 下午
引用自: LiP
Soga....原來是這麼一回事....

感謝諸位的回覆以及解答∼
有時間我會試著改看看再來回報....
3Q∼


我剛剛去看了一下你的 bloglist,
發現穿插在中間的 blog ,他們的 blogname 第一個字都是特殊符號,
例如 ◆、■、【 等,或許是這個緣故?
因為我進到 bloglist 的第二頁就出現錯誤訊息了,
所以我沒辦法更進一步的證實我的想法  :-P


主題: 請教關於 blogslist 的排序方式....
作者: LiP四月 20, 2005, 06:02:08 下午
剛剛因為在Summary增加進入後台的Link不小心給搞壞了....

感謝各位~!!!
現在網誌列表排序方式已經改成ID排序了~!!! ;-)