2017-05-03 39 views
0

我在DATABASE中有大量的html代碼。我需要將其轉換爲textarea才能進行編輯。我可以做到這一切,但是當它將代碼顯示到textarea中時我遇到了問題。一半的代碼在textarea裏面,但另一半顯示形式不是代碼,它顯示出textarea。 (See Picture)。從數據庫無法將所有HTML格式的代碼從DATABASE插入到textarea中

傳遞數據:(問題是與文本區域的顯示錯誤的網頁上)

<?php 
include_once("scripts/connect.php"); 
$id = $_GET['id']; 
$result = mysqli_query($mysqli, "SELECT * FROM formsAndCategories WHERE id=$id"); 
while($res = mysqli_fetch_array($result)) 
{ 
    $category = $res['category']; 
    $form = $res['form']; 
}?> 

顯示從數據庫代碼:

<form name="form1" method="post" action="edit.php"> 
      <label class="fb-textarea-label">Form Code</label><textarea name="form" class="form-control" rows="25"><?php echo $form;?></textarea> 
      <label class="fb-text-label">Category</label> <td><input type="text" name="category" class="form-control" value="<?php echo $category;?>"></td> 
      <input type="hidden" name="id" value="<?php echo $_GET['id'];?>"></td> 
      <input type="submit" class="btn btn-success" name="update" value="Update"></td> 
    </form> 

到目前爲止我tryed做簡單的網頁。我想馬比所有(引導,jQuery和CSS等)都毀了這一切。但沒有。 然後我發現在textarea中沒有字符限制,但無論如何我試着設置字符限制maxlength="200000"。 然後我嘗試了不同的代碼,因爲我想馬比有HTML表單代碼的問題,但沒有。

如果以這種方式不可能,那麼瑪比有不同的方式來做到這一點? 如果有人能幫我解決這個問題,那就太好了。 謝謝。

+2

也許你應該使用'用htmlspecialchars()',而在textarea的顯示它。或者你的「表格」列的長度是多少? – Qirel

+0

謝謝! htmlspecialchars()正在完美工作。 –

回答

1

以下代碼將轉義HTML字符。在上面的代碼中,HTML字符不會被轉義,直接將HTML附加到文本框會導致HTML分解。

可能會出現以下解決方案。

<textarea name="form" class="form-control" rows="25"><?php echo htmlentities($form);?></textarea> 

<textarea name="form" class="form-control" rows="25"><?php echo htmlspecialchars($form);?></textarea> 
+0

用戶Qirel已經爲我的問題找到了解決方案。但是,無論如何謝謝:) –

+0

@Dhanesh你可能想爲你的答案增加一些解釋,爲什麼應該使用這兩個函數中的任何一個,以及它們之間的區別是什麼;-)「試試這個」答案通常會被忽視,因爲它不能真正幫助未來的讀者,或幫助任何人更好地學習/理解它。 – Qirel

相關問題