У меня есть форма в php-файле, которая принимает введенные пользователем значения и отправляет данные в файл .txt.php variable в запросе jquery.ajax
Теперь он отлично работает, когда форма заполнена, нажата кнопка «отправить», и пользователь отправляется на страницу «подтверждение/завершение», в то время как полученные данные помещаются в файл .txt.
Что я хочу сделать, это использовать ajax и jquery, чтобы иметь форму => завершено/подтверждено без отправки на другую страницу.
Проблема заключается в том, что пользовательские данные теперь не передаются в TXT-файл.
PHP: (confirmation.php)
<?php
$color = $_POST['color'];
$fp = fopen('userdata.txt', 'w');
$valstring = "What Color: " . $color . "\r\n";
fwrite($fp, $valstring);
fclose($fp);
?>
AJAX/Jquery: (кнопка нажата от form.php)
$(document).ready(function() {
var cir = {
load: $('<div />', { class: 'loading' }),
contain: $('#contain')
}
$('input[type="submit"]').on('click', function(e) {
e.preventDefault();
$.ajax({
url: 'confirmation.php',
type: 'POST',
beforeSend: function() {
cir.contain.append(cir.load);
},
success: function(data) {
cir.contain.html(data);
}
});
});
});
При использовании Аякса над файлом userdata.txt только имеет What Color:
вошел в него. Значение $color
, выбранное пользователем, не было распознано.
Я знаю, что код работает без ajax, но я хотел бы, если возможно, использовать метод ajax (без обновления страницы).
Заранее благодарим за любую помощь.
Спасибо, что постарались мне помочь. Моя форма имеет набор 'method =" POST "и' action = "confirm.php". Это необходимо? Кроме того, мои пользовательские значения получены от 'selects'. Значения пользователя берутся из раскрывающихся меню, это что-то меняет? – user1648449
Нет необходимости, если вы отправляете данные через ajax. Просто попробуйте и посмотрите, как это работает. Если у вас есть поле выбора, вы должны установить 'id' поля' color' для работы вышеприведенного кода. Часть 'return false' будет прекращать отправку формы обычным способом. – Cyclonecode
Хорошо, используя ваш код, значение отправляется на страницу confirm.php (я использовал функцию 'echo' для проверки), но файл userdata.txt пуст. '$ Valstring =" What Color: ". $ color. "\ r \ n"; 'не распознается. Однако значение переносится. – user1648449