Не удается отправить содержимое через POST, когда он находится в div, а не в input / textarea - PullRequest
0 голосов
/ 16 января 2019

Я хочу отправить содержимое div, используя метод post php, но не могу использовать текстовую область или ввод, так как текстовый редактор, в котором находится содержимое, больше не влияет. Решение будет заключаться либо в теге, к которому может быть применен атрибут name, либо в другом методе отправки по почте.

Уже пробовал текстовую область и ввод.

Вот что я пробовал:

  <div id="texteditor" name="long_description" maxlength="5000">
      <textarea type="text" name="long_description" style="border: 1px solid black; background: transparent; outline: 0; width: 100%; height: 100%;" value="

      <?php
            if(isset($_SESSION['project_details'])){
              echo $_SESSION['project_details']['long_description'];
            }
          ?>

        ">
      </textarea>
    </div>

Я также пробовал:

<div id="texteditor" name="long_description" maxlength="5000">
      <input type="text" name="long_description" style="border: 1px solid black; background: transparent; outline: 0; width: 100%; height: 100%;" value="

      <?php
            if(isset($_SESSION['project_details'])){
              echo $_SESSION['project_details']['long_description'];
            }
          ?>

          ">
      </input>
  </div>

Это было первое, что я сделал:

<div contenteditable="true" id="texteditor" name="long_description" maxlength="5000">
    <?php
        if(isset($_SESSION['project_details'])){
            echo $_SESSION['project_details']['long_description'];
        }
    ?>
</div>

В настоящее время я могу получить текст для отправки по почте, однако форматирование в текстовом редакторе не работает. (например, я нажимаю «B», чтобы сделать текст жирным, и ничего не происходит). Или он просто не отправляет и возвращает ошибку «все поля должны быть заполнены».

Ответы [ 2 ]

0 голосов
/ 16 января 2019

Я не вижу, чтобы вы использовали форму вокруг этого фрагмента. Как упомянуто здесь https://stackoverflow.com/a/5518526/6639865, атрибут name должен быть внутри формы.

Первая попытка будет сделать атрибут name и поместить его в форму (или использовать ajax для публикации данных)

Может быть, вы могли бы предоставить больше кода, чтобы мы могли дать вам более конкретные ответы. Что должен сделать пост? Должен ли он быть отправлен в сценарий, где что-то происходит, а затем текст возвращается с некоторыми изменениями?

0 голосов
/ 16 января 2019

Используйте JS / AJAX. Используйте JS для хранения текста, который вы ищете, в JS-переменной и используйте AJAX для его отправки.

Таким образом, не имеет значения, из какого компонента DOM поступает текст. Вы сможете обрабатывать текст из любого компонента HTML в JS.

...