0

エディター内で記述したコンテンツをデータベースに保存できません。

div を textarea に変更すると、データベースに問題なく保存されることに気付きました。しかし、その「解決策」は wysiwyg の機能を削除し、私が必要とする豊富なデータ形式で保存することができません。

では、div を使用してデータベースに保存するにはどうすればよいでしょうか。

私のコードは次のとおりです。

<form method="post" action="index.php">
      <div id="editor" name="test">
        <?

  $sql = "SELECT blaabog FROM brugere WHERE id='1'";
  $result = $conn->query($sql);

      while($row = $result->fetch_assoc()) {
          echo $row["blaabog"];
      }

  ?>
</div>
      <button class="btn btn-default" type="submit">Send Post</button>
    </form>

コードをこれに変更すると、データベースに保存されますが、上記のように他の機能が台無しになります..

<form method="post" action="index.php">
      <textarea id="editor" name="test">
        <?

  $sql = "SELECT blaabog FROM brugere WHERE id='1'";
  $result = $conn->query($sql);

      while($row = $result->fetch_assoc()) {
          echo $row["blaabog"];
      }

  ?>
</textarea>
      <button class="btn btn-default" type="submit">Send Post</button>
    </form>

豊富なデータ形式でデータベースに保存できるようにするには、どうすればこれを修正できますか?

ありがとう

4

3 に答える 3

0

リッチテキスト エディターのコンテンツを取得して PHP ページに送信するには:

リッチテキスト エディタと同じページに、同じフォームで非表示のテキスト入力を作成します。

次に、div の内容を非表示のテキスト入力にコピーする onSubmit 関数をフォームに追加します。

次のようになります。

<form name="my_form" method="post" onSubmit="document.my_form.editor_contents.value = $('#editor').html()" action="index.php">

<textarea name="editor_contents" style="display:none;"></textarea> 

      <div id="editor" name="test">
        <?

  $sql = "SELECT blaabog FROM brugere WHERE id='1'";
  $result = $conn->query($sql);

      while($row = $result->fetch_assoc()) {
          echo $row["blaabog"];
      }

  ?>
</div>
      <button class="btn btn-default" type="submit">Send Post</button>
    </form>

noteeditor_contentsここで、をデータベースに 保存する必要があることを忘れないでください。

于 2015-12-23T23:51:55.587 に答える
-1

誰かが同じ問題を抱えている場合、私には解決策があります:

wysiwyg エディターを TINYmce に変更しました。TINYmce は、次のコードで情報をデータベースに保存します。

エディター コード:

 <script src="//cdn.tinymce.com/4/tinymce.min.js"></script>

PHP:

  // Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}


if(isset($_POST['text'])) {


  $text = $_POST['text'];




  $sql = "UPDATE users SET blaabog = '" . $text . "' WHERE id = 1";

  if ($conn->query($sql) === TRUE) {
  echo "Record updated successfully";
  } else {
  echo "Error updating record: " . $conn->error;

} }

?>

そして、いくつかのPHP:

<form method="post">
            <textarea name="text">
                                      <?

            $sql = "SELECT * FROM users WHERE id=1";
            $result = $conn->query($sql);

                while($row = $result->fetch_assoc()) {
                    echo $row["blaabog"];
                }

            ?>
          </textarea>
        </div>
        <div class="widget-container">
          <div class="widget-content">
              <div class="form-content">
                <div id="response"></div>
              </div>
              <div class="form-footer">
              <input type="submit" class="btn btn-success primary-btn" value="Gem blå bog">
              </div>
            </form>

方法はわかりませんが、上記のコードは機能します。私は専門家から解決策を購入しました - 私の説明が悪い場合は申し訳ありません.

とにかく、あなたが私と同じ問題を抱えているなら、上記のコードはうまくいくはずです!

于 2015-12-30T17:41:33.050 に答える