PHP:Can't填充TinyMCE文本区域

PHP: Can't populate TinyMCE text areas

本文关键字:填充 TinyMCE 文本 区域 Can PHP      更新时间:2023-09-26

我正在尝试构建一个接口来插入、编辑和删除MySQL数据库中的记录,使用PHP和TinyMCE编辑器来插入富文本。

当我试图在"编辑"部分填充表单中的字段时,TinyMCE文本区域不起作用。文本输入正确地填充了数据库数据,但文本区域保持为空。

我已经尝试重置TinyMCE初始化(我需要禁用段落),但没有任何变化。

这是我编辑页面的代码:

<html>
<head>
  <script type="text/javascript" src="tinymce/tinymce.min.js"></script>
    <script type="text/javascript">
    tinymce.init({
    selector: "textarea",
    forced_root_block : "", 
    force_br_newlines : true,
    force_p_newlines : false
 });
//validator form js
function validate_form(){
var x = document.getElementById('autore').value;
var y = tinyMCE.get('titolo').getContent();
if( x == "" || x == null || y == "" || y == null){
alert("Inserisci autore e titolo");
return  false;
}
}
</script>
</head>
<body>
<?php
include ("connessione_mysql.php");
$rows_id=$_GET["rows_id"];
$sql="SELECT * FROM bibliografia WHERE ID='$rows_id'";
$results=mysql_query($sql, $connessione_mysql);
$num_rows=mysql_num_rows($results);
if ($num_rows==0) {
    echo "Il database è vuoto";
} else {
while ($rows=mysql_fetch_array($results)) {
          $autore =$rows['autore'];
          $titolo=$rows['titolo'];
          $note=$rows['note'];
          $editore=$rows['editore'];
          $ID=$rows['ID'];
      }
echo "<form method='post' onsubmit='return validate_form()' action='script2_modifica_bibliografia.php' class='dark-matter'>";
echo "<label><span>Autore* :</span> <INPUT TYPE='"TEXT'" NAME='"autore'" id='"autore'" VALUE='"$autore'" SIZE='"74'"></label>";
echo "<label><span>Titolo* :</span><div class='"aggiusta'"><TEXTAREA NAME='"titolo'" id='"titolo'" VALUE='"$titolo'" ROWS='"10'" COLS='"60'"></TEXTAREA></div></label><br>";
echo "<label><span>Note :</span><div class='"aggiusta'"><TEXTAREA NAME='"note'" VALUE='"$note'" ROWS='"10'" COLS='"60'"></TEXTAREA></div></label><br>";
echo "<label><span>Editore :</span> <INPUT TYPE='"TEXT'" NAME='"editore'" VALUE='"$editore'" SIZE='"74'"></label>";
echo "<input type='"hidden'" name='"ID'" value='"$ID'">";
echo "<label><span>&nbsp;</span><INPUT TYPE='"SUBMIT'" VALUE='"Modifica il record'" CLASS='"SUBMIT'"></label>";
}
echo "</FORM>";
mysql_close($connessione_mysql);
?>
</body>
</html>

与其他表单元素不同,textarea元素不使用value属性。相反,它是一个块元素,所以你应该这样使用它:<textarea>My value goes here</textarea>

代码示例:<textarea>$note</textarea><textarea>$titolo</textarea>

有关更多信息,请参阅有关textarea元素的MDN文档:https://developer.mozilla.org/en-US/docs/Web/HTML/Element/textarea

另一个重要的注意事项是,请不要在新代码中使用mysql_*函数。它们不再被维护,并被正式弃用。看到红盒子了吗?了解准备好的语句,并使用PDO或MySQLi-本文将帮助您决定哪一个。如果你选择PDO,这里有一个很好的教程。