我已經被Lifetype中有backslash問題快煩死了...
在文章中要輸入backslash '\'時,實際上我在打文章時,必須輸入'\\'
如果輸入'\'的話,這個backslash就會被lifetype默默地吃掉....默默地...默默地...默默地...
如果文章中我輸入'\\'
顯示出來的結果是'\'
再重新編輯文章時,輸入區的文章卻變成顯示'\'而沒有顯示'\\'...
因此如果沒有再將'\'改成'\\'的話
這個backslash就會被lifetype默默地吃掉了...
以前想說自己找看看bug在哪,結果...打開Lifetype的source code來看,看得超痛苦的...
因為Lifetype將所有control頁面的流動都包在php中,因此要了解它其中的小變數,真得滿困難的...
不過不知為何,今天開竅了!
上Lifetype的網站API Document頁面看source code,感覺還滿簡單的
看到不知道的變數,都可以直接點選連結看更詳細的說明~
這樣子看就簡單多了,終於找到bug的地方了~
我目前的lifetype版本為lifetype1.2.1
修改的地方只有一個...
lifetype-1.2/class/view/admin/admineditpostview.class.php 裡面的第53行
$this->setValue( "postText", str_replace('&', '&', $this->_article->getText( false )));
改成
if( get_magic_quotes_gpc() )
$this->setValue( "postText", str_replace( '\\',"\\\\", str_replace('&', '&', $this->_article->getText( false ))));
else
$this->setValue( "postText", str_replace('&', '&', $this->_article->getText( false )));
沒有留言:
張貼留言