Javascript.RU

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

Не передаются параметры через ajax в php
Отправка данных в action.php

<script type="text/javascript" src="jquery-3.2.1.min.js"></script>
							<script type="text/javascript">
							
							$(document).ready(function(){
								$("#imgLoad").hide(); // Скрываем прелоадер
							});

							var num = 1; //чтобы знать с какой записи вытаскивать данные
							var f 					= $('#f').val();
							var id_order 			= $('#id_order').val();
							var i 					= $('#i').val();
                                                        var o					= $('#o').val();
							
							

							$(function() {
								$("#load div").click(function(){ // Выполняем если по кнопке кликнули
		
									$("#imgLoad").show(); // Показываем прелоадер
		
									$.ajax({
										
										url: "action.php", // Обработчик
										type: "POST",       // Отправляем методом GET
										data: { "f":f ,"i":i, "id_order":id_order, "o":o},
										cache: true,			
									success: function(response){
										if(response == 0){ // Смотрим ответ от сервера и выполняем соответствующее действие
										alert("Больше нет записей");
										$("#imgLoad").hide();
									}else{
										$("#content").append(response);
										num = num + 1;
										$("#imgLoad").hide();
										}
									}
								});
							});
							});
							</script>


Теперь action.php

$id_order = $_POST['id_order'];
$f = $_POST['f'];
$i = $_POST['i'];


Получает только параметр $id_order , так как он формируется автоматически на первой странице index.php

<?php echo "<input type='text' name='id_order' id='id_order' value='".$id_order."'>"; ?>

остальные же поля заполняются руками:

<input type="text" name="f" id="f" placeholder="Фамилия(Лат)" >
<input type="text" id="i" placeholder="Имя(Лат)" >
Ответить с цитированием
  #2 (permalink)  
Старый 06.11.2017, 05:48
Интересующийся
Отправить личное сообщение для aleksandr555 Посмотреть профиль Найти все сообщения от aleksandr555
 
Регистрация: 06.11.2017
Сообщений: 14

ЧТо делаю не так, почему параметр f и i не доходит до скрипта?
Ответить с цитированием
  #3 (permalink)  
Старый 06.11.2017, 05:59
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от aleksandr555
остальные же поля заполняются руками
Не важно, хоть ногами, главное что эти элементы должны быть на странице.

Управлять прелоадером, который изначально скрыт, должен Ajax.
Ответить с цитированием
  #4 (permalink)  
Старый 06.11.2017, 05:59
Интересующийся
Отправить личное сообщение для aleksandr555 Посмотреть профиль Найти все сообщения от aleksandr555
 
Регистрация: 06.11.2017
Сообщений: 14

а почему передается только один параметр, который заполняется динамически, а остальные заполнили а передаются пустые параметры?
Ответить с цитированием
  #5 (permalink)  
Старый 06.11.2017, 06:00
Интересующийся
Отправить личное сообщение для aleksandr555 Посмотреть профиль Найти все сообщения от aleksandr555
 
Регистрация: 06.11.2017
Сообщений: 14

<input type="text" name="f" id="f" placeholder="Фамилия(Лат)" >
<input type="text" id="i" placeholder="Имя(Лат)" >
Ответить с цитированием
  #6 (permalink)  
Старый 06.11.2017, 06:01
Интересующийся
Отправить личное сообщение для aleksandr555 Посмотреть профиль Найти все сообщения от aleksandr555
 
Регистрация: 06.11.2017
Сообщений: 14

такое ощущение, что Value пустой, если делаю например так:

<?php echo "<input type='text' name='f' id='f' value='Иванов'>"; ?>
то все работает, а так нет
<input type="text" name="f" id="f" placeholder="Фамилия(Лат)" >

как будто value пустой
Ответить с цитированием
  #7 (permalink)  
Старый 06.11.2017, 06:07
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от aleksandr555
а почему передается только один параметр
Вы в этом уверены? И вообще, передаются формы, а у формы есть методы получения ее полей, то есть, вот это:

var f = $('#f').val();
var id_order = $('#id_order').val();
var i = $('#i').val();
var o = $('#o').val();


заменяем на $(селектор формы).serialize(), выбросив id у полей формы.
Ответить с цитированием
  #8 (permalink)  
Старый 06.11.2017, 06:10
Интересующийся
Отправить личное сообщение для aleksandr555 Посмотреть профиль Найти все сообщения от aleksandr555
 
Регистрация: 06.11.2017
Сообщений: 14

а как получить потом
Ответить с цитированием
  #9 (permalink)  
Старый 06.11.2017, 06:12
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

data: { "f":f ,"i":i, "id_order":id_order, "o":o} $(селектор формы).serialize(),
....

И это будет в $_POST.
Ответить с цитированием
  #10 (permalink)  
Старый 06.11.2017, 06:14
Интересующийся
Отправить личное сообщение для aleksandr555 Посмотреть профиль Найти все сообщения от aleksandr555
 
Регистрация: 06.11.2017
Сообщений: 14

проверил тоже самое, может я форму не так делаю)
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в обработчик php через Ajax передать несколько значений? Urukhay Общие вопросы Javascript 2 30.08.2014 16:19
Несколько запросов к php через AJAX Florens AJAX и COMET 7 25.07.2014 21:21
Живой поиск JQUERY + AJAX + PHP + MYSQL dimi007 AJAX и COMET 2 22.07.2014 13:50
При отправке через ajax не открывается файл-адресат temuch-13 AJAX и COMET 6 09.07.2014 17:03
php session а в ajax Sadist_dead AJAX и COMET 1 19.08.2011 18:35