Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.04.2014, 23:19
Профессор
Отправить личное сообщение для ufaclub Посмотреть профиль Найти все сообщения от ufaclub
 
Регистрация: 27.11.2010
Сообщений: 202

ajax отправка данных на стороний файл php
<form id="myForm" action="http://site.com/send.php" method="post">
<input id="name" type="text" name="name" />
<input id="email" type="text" name="email" />
<input id="phone1" type="text" name="phone" />		
<input type="submit" value="Отправить заявку" />
</form>



Помогите написать скрипт на Jquery. Пользовался раньше плагином jquery.form.min.js но он выполняет только отварку если файл который принимает пост данные лежит в корне того же сайта.

(а если отправлять данные на файл который на другом доммене - то он отправляет но не выполняет условия которые нужно делать после того как отправились данные)

мне нужно что типа

отправить значение input#name, input#email, input#phone1

на файл который лежит по адресу http://site.com/send.php

и если передача удалась то выполнить ряд условий


$("#predlojenie").css({"display" : "none"});
	   $("#imessage").css({"display" : "block"});
	   $("#popup ").css({"height" : "70px"});
	   
       setTimeout( function () { $('#close_popup').click(); }, 3000 );
Ответить с цитированием
  #2 (permalink)  
Старый 02.04.2014, 01:41
Новичок на форуме
Отправить личное сообщение для spbsprut Посмотреть профиль Найти все сообщения от spbsprut
 
Регистрация: 02.04.2014
Сообщений: 3

именно на другом доммене?

Вообще насколько я знаю/помню кроссдоменный запрос jquery может теоретически и сработать, но так писать нельзя если запрос нужно слать на другой домен это надо делать с сервера например используя библиотеку CURL
Ответить с цитированием
  #3 (permalink)  
Старый 05.04.2014, 13:51
Аватар для mi.rafaylik
Кандидат Javascript-наук
Отправить личное сообщение для mi.rafaylik Посмотреть профиль Найти все сообщения от mi.rafaylik
 
Регистрация: 07.12.2012
Сообщений: 113

spbsprut дело пишет, вот пример подобной связки:
Делаем post-запрос к php-файлу sender.php (лежащем на Вашем сервере), в котором данные input-ов передаются в формате JSON.
Собрать данные с полей формы можно по-разному (serialize, serializeArray), но в примере пропишем всё вручную для наглядности.
$.post('sender.php', {
	$('#name').attr('name'):$('#name').val(),
	$('#email').attr('name'):$('#email').val(),
	$('#phone1').attr('name'):$('#phone1').val()
}, function(data){
	// получаем ответные данные в объекте data и выполняем дальнейшие действия
});

Серверная часть - наш посредник sender.php передаёт данные php-файлу на другом домене, получает ответ и возвращает его в JS.
$url = 'http://site.com/file.php';
$context = stream_context_create(array(
	'http' => array(
		'header'  => "Content-type: application/x-www-form-urlencoded\r\n",
		'method'  => 'POST',
		'content' => http_build_query($_POST),
	)
));
$response = file_get_contents($url, false, $context);
echo $response;
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ajax отправка данных Serhiy AJAX и COMET 0 29.01.2014 19:03
Простейшая отправка данных на сервер и вывод MBmusic AJAX и COMET 12 23.09.2013 12:35
Книги по Ajax BaVa Учебные материалы 18 18.08.2013 14:05
отправка данных в инпут через AJAX 2 imediasun1 Элементы интерфейса 1 30.01.2013 18:13
отправка данных в инпут через AJAX imediasun1 Элементы интерфейса 2 30.01.2013 18:06