После ajax-запроса success функция должна выводить "Работает"(Который возвращает php-обработчик запроса). В самой верхней строке действительно выводится то, что нужно, но кроме этого html разметку одного из моих документов.
Вот код отправки ajax:
function change_description() {
const penbtn = $('.mypage__change-descr');
penbtn.click(function () {
const changeForm = penbtn.parent().siblings('.mypage__write-descr').eq(0);
const closeBtn = changeForm.find('.mypage__write-descr-header-close');
const submit = closeBtn.siblings('.mypage__write-descr-header-submit');
changeForm.slideToggle('fast');
closeBtn.click(function () {
changeForm.slideUp('fast');
});
submit.click(function () {
const descrText = changeForm.children().eq(1).val();
$.ajax({
type: 'POST',
// url: 'php-scripts/my-pageHandler.php',
dataType: 'html',
data: {
descrText: descrText
},
success: function (data) {
const descriptionBox = $('.mypage__description p');
descriptionBox.text(descrText);
changeForm.slideUp('fast');
alert(data);
}
});
});
});
}
Код обработки ajax на php:
function change_description()
{
if (isset($_POST['descrText'])) {
require __DIR__ . '/../#DATABASE.php';
$newDescription = htmlspecialchars($_POST['descrText']);
$id = $_SESSION['user']['id'];
$query = $db->prepare(
"UPDATE `users` SET `description`=:description WHERE `id`='$id'"
);
$param = ['description' => $newDescription];
$query->execute($param);
echo 'Работает';
}
}
Заранее спасибо за ответ. Отвечу на все ваши вопросы.