歡迎光臨, 訪客. 請先 登入註冊一個帳號.
四月 19, 2024, 06:43:25 上午
19595 文章 在 3865 主題 由 4580 會員
最新註冊會員: aa123aa1
LifeType 中文開發論壇  |  開發  |  核心補強  |  bug 單引號問題 « 上篇主題 下篇主題 »
頁: [1]
作者 主題: bug 單引號問題  (閱讀 16299 次)
scud
新手見習
*
文章: 18


檢視個人資料 個人網站
« 於: 四月 25, 2006, 08:37:27 下午 »

在articles.class.php裏麵有一些類似這樣的:

程式碼:
    $filter->normalizeText(Db::qstr($newArticle->getText(false)))

應該改為

程式碼:
Db::qstr($filter->normalizeText($newArticle->getText(false)))

否則在內容中輸入單引號的對應html碼 "'" 程式就會報錯

因為normalizeText把 '轉成為單引號,造成sql語句齣錯暸

當然articles.class.php 以及customfieldsvalues.class.php 裏麵還有幾個類似的地方,也需要改

當然改完之后會不會引髮其他副作用,我就不清楚...
已記錄
scud
新手見習
*
文章: 18


檢視個人資料 個人網站
« 回覆文章 #1 於: 四月 25, 2006, 10:24:00 下午 »

另外发现如果标题里面包含双引号,编辑文章以及文章的url的 title 属性就有问题了
« 最後編輯時間: 四月 25, 2006, 10:25:42 下午 由 scud » 已記錄
scud
新手見習
*
文章: 18


檢視個人資料 個人網站
« 回覆文章 #2 於: 四月 26, 2006, 09:17:49 上午 »

我已經該好暸,具體可以閱讀  http://scud.blog.javascud.org/post/27.htm  (簡體中文)

當然改起來很簡單
已記錄
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #3 於: 四月 26, 2006, 11:01:33 上午 »

Hi Sucd:

在你的博客上留言了,謝謝!

Mark
已記錄

scud
新手見習
*
文章: 18


檢視個人資料 個人網站
« 回覆文章 #4 於: 四月 26, 2006, 11:13:36 上午 »

report as http://bugs.lifetype.net/view.php?id=879

 微笑
已記錄
markwu
系統管理員
超級會員
*****
文章: 3928


Mark Wu


檢視個人資料 個人網站
« 回覆文章 #5 於: 四月 26, 2006, 01:56:03 下午 »

謝謝!看到了!

Mark
已記錄

twu2
初級會員
**
文章: 61



檢視個人資料 個人網站
« 回覆文章 #6 於: 四月 26, 2006, 03:10:13 下午 »

這個存檔的 bug 在我這兒沒出現過. (也許是之前改過的 backslash 問題也順便避開了這個問題, 不過那個 patch 似乎只存在 1.1 的 svn 中, 在 1.0.4 中並沒有加入)
不過顯示的地方是在編輯文章時, 標題的 ' 並沒有被 escape, 所以在列表及一般顯示是正常, 只有在編輯文章時, 在 ' 之後的東西, 會被 browser 忽視. (可以看 html code, 東西有傳出, 只是沒有被 escape)

只要修改 template/admin/editpost.template 內, 把
程式碼:
value="{$postTopic}"
加上 escape 就可以
程式碼:
value="{$postTopic|escape}"
已記錄

頁: [1]
LifeType 中文開發論壇  |  開發  |  核心補強  |  bug 單引號問題 « 上篇主題 下篇主題 »
    前往: