在MySQL中存儲富文本格式的文章,可以使用TEXT數據類型,該類型可以存儲最大長度為65535個字符的文本數據。同時,為了便于解析和顯示,需要將文章內容中的段落加上p標簽,將代碼塊加上pre標簽。
下面是一個示例的MySQL表結構:
CREATE TABLE `articles` (
`id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
`title` varchar(255) NOT NULL,
`content` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
在將文章內容存入數據庫前,需要對內容進行標簽處理。例如,如果文章中存在段落,可以使用以下代碼:
$content = nl2br($content); //將換行符轉換為br標簽
$content = '
' . str_replace('
', '
', $content) . '
'; //將連續的br標簽組合為p標簽 如果文章中存在代碼塊,可以使用以下代碼: $content = htmlspecialchars($content, ENT_QUOTES); //將內容中的特殊字符轉義,避免出現語法錯誤 $content = '' . $content . '
'; //使用pre和code標簽包裹代碼塊
在將文章內容插入數據庫時,需要使用mysqli_real_escape_string函數對內容進行轉義,以防止出現SQL注入漏洞。例如:
mysqli_query("INSERT INTO articles(title, content) VALUES ('$title', '" . mysqli_real_escape_string($content) . "')");
這樣,就可以成功地將含有富文本格式的文章存入MySQL數據庫中,并在需要時正確地解析和顯示。下一篇css點擊更改