首页 > 解决方案 > 从 div 获取格式化文本到 PHP 变量

问题描述

我正在尝试使用 JS 提取 div 元素的格式化内容并将其传递给隐藏变量。到目前为止,我已经阅读了关于这个主题的所有关于 stackoverflow 的问题,似乎我找到了一个解决方案,它实际上已经工作了一次,但是突然间它停止了工作,我找不到让它再次工作的方法。

我寻找没有 AJAX、DOM 等的最简单的解决方案。

我的代码:

<?php

$conn = new PDO('mysql:host=localhost;dbname=parek', 'parek', 'parek');
$conn->query("SET NAMES 'utf8'");

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

  $datum = date('d. m. Y');
  $jmeno = $_POST['jmeno'];
  $text = $_POST['text'];

  $insert = $conn->prepare("INSERT INTO aktuality (datum, nazev, text) VALUES ('$datum', '$jmeno', '$text')");
  $insert->execute();

  $message = "Aktualita byla úspěšně zveřejněna";
  echo "<script type='text/javascript'>alert('$message'); window.location.replace('/');</script>";
}



?> <style>
  button {
    background-color: #e6c63b;
    width: 100%;
    color: white;
    padding: 15px;
    margin: 10px 0px;
    border: none;
    cursor: pointer;
  }

  form {
    border: 3px solid #f1f1f1;
  }

  input[type=text],
  input[type=password] {
    width: 100%;
    margin: 8px 0;
    padding: 12px 20px;
    display: inline-block;
    border: 2px solid green;
    box-sizing: border-box;
  }

  button:hover {
    opacity: 0.9;
  }

  .cancelbtn {
    width: auto;
    padding: 10px 18px;
    margin: 10px 5px;
  }

  .container {
    padding: 25px;

  }
</style>
<center>
  <h1> Přidávání aktualit </h1>
</center>

<form action="addarticle.php" method="post" enctype="multipart/form-data">
  <div class="container">
    <label for="jmeno">Název aktuality:</label>
    <input type="text" name="jmeno" id="jmeno">
    <label for="editor">Text aktuality:</label>
    <input id="text" name="text" type="hidden">
    <div id="editor">
      <h1>Nadpis aktuality</h1>
      <p>Text aktuality</p>
      <p><br></p>
    </div> <button type="submit" name="aktualita">Přidat aktualitu</button>
  </div>
</form>
<script>
  var quill = new Quill('#editor', {
    theme: 'snow'
  });
  var contentText = document.getElementByClassName('ql-editor');
  var hiddenInput = document.getElementById('text');

  // copy the text to input when the user writes in contentText div contentText.onkeyup = function() {
  hiddenInput.innerHTML = this.innerHTML; // 'this' is pointing to contentText }; 
</script>

我发布的脚本是一个单独的文件,我将其包含在主页的弹出窗口中。提前致谢 !

标签: javascriptphphtml

解决方案


推荐阅读