出於某種原因,它執行語句,然後bind_results返回所有值,但不是$ postContent的最後一個值。bind_result()沒有得到所有結果
<?php
if (isset($_GET['postID']))
{
$postID = $_GET['postID'];
$stmt = $mysqli->prepare("SELECT * FROM Posts WHERE postID = ?");
$stmt->bind_param('i', $postID);
$stmt->execute();
$stmt->bind_result($postID, $postTitle, $postCat, $postUser, $postDateTime, $postContent);
$stmt->fetch();
echo $postContent;
?>
<h1><?php echo $postTitle;?></h1>
</div> <!-- End of box div -->
<div class="blogroll"> <!-- Start of blogroll div -->
<div class="top"></div> <!-- Start and end of top div -->
<div class="post"> <!-- Start of post div -->
<div class="post_date">Posted by <?php echo $postUser;?> on <?php echo $postDateTime ?> Category : <?php echo $postCat;?></div> <!-- Start and end of post_date div -->
<div class="post_text"> <!-- Start of post_text div -->
<?php echo $postContent;?>
</div> <!-- End of post_text div -->
<?php
}
?>
數據庫確實爲postContent提供了列,並且它與bind_results顯示的順序相同。我已經嘗試了你的建議,並且它沒有在HTML頁面的源代碼中顯示postContent。此外,htmlspcialchars()也沒有工作,但因爲我打算有HTML標籤,例如我將繼續使用它。你是一個很好的幫助 – 2012-01-08 20:18:07
還有什麼想法? – 2012-01-09 22:36:00
@ user1136076我可以建議的另一件事是'var_dump($ postContent)'和其他變量的_all_以確定它們每個都包含預期的內容 – 2012-01-10 14:40:43