我從頭開始構建個人博客,並且在從MySQL輸出文本正文時讓我的鏈接正確顯示時遇到了問題。顯示來自MySQL數據庫的文本正文內的鏈接
例如; 當我從數據庫中調用博客文章的鏈接無法正確顯示時,我有一個鏈接將大約200字內嵌到博客文章中。我曾嘗試使用stipslashes()
和htmlentities()
,這兩者都不起作用。
這裏是我的代碼的博客文章保存到數據庫:
function check_input($data, $problem='')
{
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
if ($problem && strlen($data) == 0)
{
die($problem);
}
return $data;
}
if(isset($_POST['addBlog'])) { //form submitted?
// get form values, escape them and apply the check_input function
$title = $link->real_escape_string($_POST['title']);
$category = $link->real_escape_string(check_input($_POST['category'], "You must choose a category."));
$content = $link->real_escape_string(check_input($_POST['blogContent'], "You can't publish a blog with no blog... dumbass."));
$date = $link->real_escape_string(check_input($_POST['pub_date'], "What day is it foo?"));
mysqli_connect($db_host, $db_user, $db_pass) OR DIE (mysqli_error());
// select the db
mysqli_select_db ($link, $db_name) OR DIE ("Unable to select db".mysqli_error($db_name));
// our sql query
$sql = "INSERT INTO pub_blogs (title, date, category, content) VALUES ('$title', '$date', '$category', '$content');";
//save the blog
mysqli_query($link, $sql) or die("Error in Query: " . mysqli_error($link));
if (!mysqli_error($link))
{
print "<p> Blog Successfully Published! </p>";
}
}
這裏是我的代碼,以顯示博客文章:這是麻煩的是
// Grab the data
$result = mysqli_query($link, "SELECT * FROM pub_blogs") or die ("Could not access DB: " . mysqli_error($link));
while ($row = mysqli_fetch_assoc($result))
{
$id = $link->real_escape_string($row['id']);
$title = $link->real_escape_string($row['title']);
$date = $link->real_escape_string($row['date']);
$category = $link->real_escape_string($row['category']);
$content = $link->real_escape_string($row['content']);
$id = stripslashes($id);
$title = stripslashes($title);
$date = stripslashes($date);
$category = stripslashes($category);
$content = stripslashes($content);
}
echo "<div class='blog_entry_container'>";
echo "<span class='entry_date'><a href='#'>" .$date. "</a> - </span><span class='blog_title'><a class='blogTitleLink' href='#'>" .$title. "</a></span>";
echo "<p>" .$content. "</p>";
echo "</div>";
問題在於$content
變量
我認爲你需要addslashes而不是stripslashes –
不,這只是增加了更多的斜線。我已經試過了。 –
你能粘貼你到$內容? – GBD