Показать сообщение отдельно
  #4 (permalink)  
Старый 29.07.2023, 14:05
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,745

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-type" content="text/html; charset=utf-8" lang="ru">
  <meta name="viewport" content="width=device-width, initial-scale=1.0" >
</head>

<body>
<label>Значение 1
    <input id='v1'  type='text'>
</label>
<br>
<label>Значение 2
    <input id='v2'  type='text'>
</label>
<br>
<label>Значение 3
    <input id='v3'  type='text'>
</label>
<br><br>
<button type='button' id='bsave'>Save</button>
<br><br>
<textarea id='answ'></textarea>

<script>
const v1 = document.getElementById('v1');
const v2 = document.getElementById('v2');
const v3 = document.getElementById('v3');
const but = document.getElementById('bsave');
const answ = document.getElementById('answ');
but.addEventListener('click', async () => {
    str = `{"v1":"${v1.value}","v2":"${v2.value}","v3":"${v3.value}"}`;
    try {
        const response = await fetch('./save.php', {
            method: 'POST', 
            headers: {
              'Content-Type': 'application/json'
            },
            body: str 
        });
        const text = await response.text();
        answ.value = text; 
    } catch (err) {
        answ.value = "Какая то ошибка"
    }
});
</script>


</body>
</html>


save.php
<?php
/* Получаем строку JSON по POST запросу*/
$json_str = file_get_contents('php://input');

$values= json_decode($json_str, true);

$file ='savefile.txt';
/* Формируем строку для записи в файл*/
$str = 'v1=' . $values['v1'] . ' v2=' . $values['v2'] . ' v3=' . $values['v3'] . "\n";
/* Дописываем в конец файла*/
file_put_contents($file, $str, FILE_APPEND);
/* Снова считываем фесь файл*/
$answ = file_get_contents($file);
/* Передаем содержимое файла в качестве ответа*/
echo $answ;
?>
Ответить с цитированием