[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Undefined index (не записывается поле)
elena180607
Здравствуйте, уважаемые специалисты. На сайте есть раздел, где пользователь вводит указанные данные и жмет "сохранить". Данные записываются в data.csv файл. Реализован код так, как в примере ниже. Незадача в том, что с некоторых пор первое поле стало игнорироваться (не записывается), а в логах появляется ошибка [15-Mar-2021 09:44:40 UTC] PHP Notice: Undefined index: field1 in /home/site/public_html/fdata/posted.php on line 7. Ранее все было ОК.
Что характерно, когда самостоятельно тестирую - данные записываются. Если пользователь нажимает на "сохранить" - первое поле не сохраняется, а остальные - нормально...
В файле posted.php значение field1 указано. Ткните носом пожалуйста, только доступно, если можно, а то я слабо разбираюсь в вопросе...

form.html
<?php
session_start();
?>

<script
src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

<form>
<input
type="text" onchange="Saveme('field1', this.value); checkme()" inputmode="numeric" />
<input
type="text" onchange="Saveme('field2', this.value); checkme()" inputmode="numeric" />

<select
onchange="Saveme('field3', this.value);">
<option
value="test1">опция1</option>
<option
value="test2">опция2</option>
</select>

<button
id="pushme">сохранить</button>
</form>

<script>
function
Saveme(name, value) {
$.ajax({ type: "POST", url: "/saver.php",
data: { 'GO-Function': "Saveme", 'name': name, 'value': value }
}
);
}
$("#pushme").click(function() {
$.ajax({ type: "POST", url: "/posted.php"
});
});
</script>


posted.php


<?php
session_start();
?>

<?php

$list = array (
array($_SESSION["field1"], $_SESSION["field2"], $_SESSION["field3"])
);

$fp = fopen('data.csv', 'a+');
foreach ($list as $fields) {
fputcsv($fp, $fields, '-', '—');
}
fclose($fp);
?>


saver.php


<?php
session_start();
header('Content-type: text/html; charset=UTF-8');
if($_SERVER['HTTP_X_REQUESTED_WITH'] != "XMLHttpRequest") {exit;}
if(!isset($_POST['GO-Function'])) {exit;}

if($_POST['GO-Function'] == "Saveme") {
$_SESSION[$_POST["name"]] = $_POST["value"];
exit;
}
?>
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.