Если вам нужно просто отправить голый текст, то это делается немного не так.
Пример отправки чистого текста:
$('#button').click(async function() {
var txt = 'Привет, мир!';
var response = await $.ajax({
url: 'test.php',
type: 'POST',
contentType: 'text/plain; charset=UTF-8',
data: txt
});
$('p.out').html(response);
});
На сервере принимайте и выводите полученный текст так:
<?php
// Включаем отображение ошибок:
ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
// Указываем браузеру, что ответ сервера
// является обычным текстом в кодир. UTF-8:
header('Content-Type: text/plain; charset=UTF-8');
// Записываем в переменную то,
// что отправил нам браузер по AJAX:
$received = file_get_contents('php://input');
// Выводим полученный текст (отдаем его в браузер):
echo 'Из фронта (браузера) был получен следующий текст: ' . $received;