最近遇到一個問題
就是使用了html編輯器傳送到sql會寫入不完全
後來發現是在單引號的部份斷掉了
導致後來echo整個錯誤
找到了問題的主因之後
就先把html的一些特殊字元先轉換掉
htmlspecialchars($string)//轉換特殊字元成為HTML實體
'&' (and符號)轉換成 '&'
'"' (雙引號)轉換成 '"'
'
'>' (大於)轉換成 '>'
之後會剩下單引號,因為我的html代碼是從word貼到html編輯器
所產生出來的,其中他有關於字型的部份,有使用到單引號
這裡轉換不到,所以造成寫入sql有問題
於是,使用以下函式替代字串
ereg_replace($string1,$string2,$string);//把$string裡面的$string1替代為$string2
等到sql讀出來以後,在替代回來
例如:
ereg_replace("'","&oo&",$string);
之後再
ereg_replace("&oo&","'",$string);
就可以解決問題了
全站熱搜