HTML JQuery или PHP, Запись данных в текстовый файл

У меня есть следующий код, который берет ближайший родственный элемент кнопки с классом "description" и выводит ее содержимое на консоль. Я хотел бы взять этот контент и записать его в определенное место в текстовом файле. Мой код выглядит следующим образом:

<!DOCTYPE html>
<html>
<head>
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <title></title>
</head>
<body>

    <table>
        <tr>
            <td>
                <table>
                    <tr><td>Name</td><td>Jenkins</td></tr>
                    <tr><td>Job</td><td>Accountant</td></tr>
                </table>
            </td>
            <td class="description">
                He's just a man.
            </td>
            <td>
                <button class="learn">Learn</button>
            </td>
        </tr>
    </table>

    <script type="text/javascript">
        $(".learn").click(function(){
        var data = $(this).closest("td").siblings(".description").text();
        console.log(data);
        });
    </script>
</body>
</html>

Файл, в который я хочу написать, выглядит так:

Var data = [
  {
    name: group1,
    items: [
      {
        name: "bob",
        job: "salesman",
        description: "underground comedian"
      }
    ]
  },
  {
    name: group2,
    items: [
      {
        name: "susan",
        job: "chef",
        description: "loves McDonalds"
      }
    ]
  }
]

Поэтому я хотел бы иметь возможность создавать новый элемент этого текстового файла, где бы он ни был указан (group1 или group2), и вставлять информацию, полученную скриптом.

Я читал, что использование JS и JQuery для такой работы, которую я хочу сделать, не очень хорошая идея, поэтому, если кто-нибудь мог бы объяснить, как я мог бы выполнить такую ​​работу с PHP или их комбинацией, это было бы полезно.

1 ответ

Измените свой код JS на:

<script type="text/javascript">
    $(".learn").click(function(){
    var data = $(this).closest("td").siblings(".description").text();
    $.post('save.php', 'data=' + data); //AJAX call to save.php
    });
</script>

Затем создайте файл save.php и поместите его в него:

<?php
file_put_contents('textfile.txt', $_POST['data']);

Я не уверен, как вы хотите отформатировать это внутри этого текстового файла, но это должно помочь вам начать.

Другие вопросы по тегам