Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.03.2017, 12:32
gvv gvv вне форума
Новичок на форуме
Отправить личное сообщение для gvv Посмотреть профиль Найти все сообщения от gvv
 
Регистрация: 30.03.2017
Сообщений: 2

отправка динамической формы на сервер
Добрый день! Подскажите пожалуйста как отправить данные формы, созданной в JS, на сервер?

Пример:
// form.html (создание формы)

<body></body>
<script>

var frm = document.createElement('form');
frm.method = "post";
frm.action = "form.php";
document.body.appendChild(frm);

var inp = [];

var inp[0] = document.createElement('input');
inp[0].name = "inp_0";
inp[0].value = "value";
frm.appendChild(inp[0]);

var inp[1] = document.createElement('input');
inp[1].name = "inp_1";
inp[1].type = "submit";
frm.appendChild(inp[1]);

</script>

// form.php (получение данных из формы)
<?php
for ($i=0; $i<count($_REQUEST); $i++)
{
echo("REQUEST[$i] = $_REQUEST[$i]<br>");
}
?>
------------------------------
в php-файле массив $_REQUEST пустой (т.е. в браузере получается следующая строка: "REQUEST = " вместо желаемой "REQUEST = value". подскажите пожалуйста, где ошибка?
Ответить с цитированием
  #2 (permalink)  
Старый 30.03.2017, 12:52
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Потому, что это

for ($i=0; $i<count($_REQUEST); $i++)
{
echo("REQUEST[$i] = $_REQUEST[$i]<br>");
}

полнейшая чушь. Данные отправленные формой можно и в $_REQUEST забрать, как $_REQUEST['inp_1'], а можно и нужно в $_POST['inp_1'], коим методом они и были отправлены.
Ответить с цитированием
  #3 (permalink)  
Старый 30.03.2017, 14:00
gvv gvv вне форума
Новичок на форуме
Отправить личное сообщение для gvv Посмотреть профиль Найти все сообщения от gvv
 
Регистрация: 30.03.2017
Сообщений: 2

Действительно, если поставить $_POST вместо $_REQUEST и по отдельности (не массивом $_POST[$i], а к каждому элементу отдельно $_POST['inp_1'], $_POST['inp_2'], $_POST['inp_3'], ...) - все работает. Спасибо!
Ответить с цитированием
  #4 (permalink)  
Старый 30.03.2017, 14:38
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Можно и циклом, но перебором не по индексу, которых нет в массиве, а по ключам foreach($_POST as $key=>$value), если ключи не ради их наличия созданы.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обход динамической формы kaang Angular.js 1 07.06.2016 13:24
отправка формы ajax yintar Элементы интерфейса 3 21.03.2016 20:38
Отправка данных формы. Как выглядит структура метода с AJAX (по JQuery)? Coriolan161 AJAX и COMET 5 24.11.2015 20:17
Простейшая отправка данных на сервер и вывод MBmusic AJAX и COMET 12 23.09.2013 12:35
Отправка данных формы AJAX`ом? Jopses jQuery 4 20.02.2013 12:34