[討論] 把論壇改成沒副檔名的圖也開到...
發表於 : 2005-03-26 23:53
先說明一點, phpBB 因為要防止 [img] 會有自動開啟的特性, 而限制的很厲害, 防止人用 [img] 來令人看那帖時自動執行了一些東西 (例如是程式碼等就直接塞在 [img] 內)
但不方便之處是除了副檔名是 jpg|jpeg|gif|png 外其他的也不能用 [img], 而且一些如 tinypic 的網根本沒副檔名的就完全不能用 [img], 現在我在不斷嘗試下改到令沒副檔名的也可以用到 [img], 就是開 includes/bbcode.php 內, 找這句\r
改成
即是在 \.(jpg|jpeg|gif|png 前加了一個 |
請各位給些意見... (我已預到放寬 img 的危險了, 但由於很多人因此不貼圖, 所以只好這樣 <- 又不想開 html 碼, 況且他們也不知論壇是可以用 html = =)
雖說已知問題, 但被人提醒後也想了一會, 最後我想到這方式... @@
不要用上面的句子, 在\r
後加一句\r
例如我認為 tinypic.com 內來的內容一定是安全的圖片, 那我就把那句加上去, 之後 tinypic.com 來的 url 就一定可以用 [img] 開...
但不方便之處是除了副檔名是 jpg|jpeg|gif|png 外其他的也不能用 [img], 而且一些如 tinypic 的網根本沒副檔名的就完全不能用 [img], 現在我在不斷嘗試下改到令沒副檔名的也可以用到 [img], 就是開 includes/bbcode.php 內, 找這句\r
代碼: 選擇全部
$text = preg_replace("#\[img\]((http|ftp|https|ftps)://)([^ \?&=\#\"
\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[img:$uid]\\\1' . str_replace(' ', '%20', '\\\3') . '[/img:$uid]'", $text);代碼: 選擇全部
$text = preg_replace("#\[img\]((http|ftp|https|ftps)://)([^ \?&=\#\"
\t<]*?(|\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[img:$uid]\\\1' . str_replace(' ', '%20', '\\\3') . '[/img:$uid]'", $text);請各位給些意見... (我已預到放寬 img 的危險了, 但由於很多人因此不貼圖, 所以只好這樣 <- 又不想開 html 碼, 況且他們也不知論壇是可以用 html = =)
雖說已知問題, 但被人提醒後也想了一會, 最後我想到這方式... @@
不要用上面的句子, 在\r
代碼: 選擇全部
$text = preg_replace("#\[img\]((http|ftp|https|ftps)://)([^ \?&=\#\"
\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[img:$uid]\\\1' . str_replace(' ', '%20', '\\\3') . '[/img:$uid]'", $text);
代碼: 選擇全部
$text = preg_replace("#\[img\]http://www.tinypic.com/*?\[/img\]#sie", "'[img:$uid]\\\1' . str_replace(' ', '%20', '\\\3') . '[/img:$uid]'", $text);