ผมได้ทำฟอร์มรับข้อมูลด้วย ckeditor ลง mysql แต่พอจะบันทึกในรูปแบบตัวยกกำลัง หรือ ตัวห้อย ตาม toolbar ที่มีก็ทำได้แต่พอไปดูใน mysql กลับบันทึกเป็นรูปแบบข้อความติดกันธรรมดา ไม่มี tag อะไรให้เห็นที่จะเอามาแปลงได้ ซึ่งตอนแปลงเพื่อแสดงผล ผมใช้ฟังก์ชั่น bbcode ในการแปลง ตามนี้ รบกวนผู้รู้ช่วยแนะนำด้วยครับ ขอบคุณครับ
Code (PHP)
// Function BBcode สำหรับแปลงข้อความให้เป็นลิ้งค์
function showBBcodes($text) {
// NOTE : I had to update this sample code with below line to prevent obvious attacks as pointed out by many users.
// Always ensure that user inputs are scanned and filtered properly.
$text = htmlspecialchars($text, ENT_QUOTES, $charset);
// BBcode array
$find = array(
'~\[b\](.*?)\[/b\]~s',
'~\[i\](.*?)\[/i\]~s',
'~\[u\](.*?)\[/u\]~s',
'~\[quote\](.*?)\[/quote\]~s',
'~\[size=(.*?)\](.*?)\[/size\]~s',
'~\[color=(.*?)\](.*?)\[/color\]~s',
'~\[url\]((?:ftp|https?)://.*?)\[/url\]~s',
'~\[img\](https?://.*?\.(?:jpg|jpeg|gif|png|bmp))\[/img\]~s'
);
// HTML tags to replace BBcode
$replace = array(
'<b>$1</b>',
'<i>$1</i>',
'<span style="text-decoration:underline;">$1</span>',
'<pre>$1</'.'pre>',
'<span style="font-size:$1px;">$2</span>',
'<span style="color:$1;">$2</span>',
'<a href="$1" target="_blank">$1</a>',
'<img src="$1" alt="" />'
);
// Replacing the BBcodes with corresponding HTML tags
return preg_replace($find,$replace,$text);
}
// End Function BBcode สำหรับแปลงข้อความให้เป็นลิ้งค์