Javascript.RU

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

Jquery, ajax запрос.
Здравствуйте.
Возможно мой вопрос будет не очень корректным. Заранее приношу извинения. У меня не получается связки между js скриптом и php кодом.
Начал проводить опыты на самом элементарном примере. Вся равно не получается. Может кто поможет.

test.js (использую jquery)
$(document).ready(function(){
	
	$('#button').click(function(){
	
	// alert ('ok');
	
		$.ajax({
		type: "POST",
		url: "test.php",
		data: "name=test&location=test2",
		success: function(msg){
		alert( "Data Saved: " + 'ok' );
		},
		error: function() {
		alert( "Data not Saved" );
		}
	
		});
	
	});
	
});


test.php
<?php
header('Content-Type: text/html; charset=utf-8');
	
if($_POST['name']) {
print "ok";
}


Мне нужно что бы при нажатие на #button начинал исполняться пхп код.
А браузер выдает только alert, который в success.
Вообще нужно переменную туда передавать которая вычисляется в формуле в самом js, и потом обновить данные бызы. А в js вернуть то что все прошло успешно. Вывод на экран даже не срабатывает, не говоря уже о передачи переменной.
Как это сделать?
Заранее благодарен.

Последний раз редактировалось fantazista, 10.03.2011 в 11:13.
Ответить с цитированием
  #2 (permalink)  
Старый 10.03.2011, 11:40
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

fantazista,
рнр код выплняется. вывод на экран не срабатывает-а он и не должен
читай про аякс.внимательно читай-чем он отличается от передачи данных через форму
Ответить с цитированием
  #3 (permalink)  
Старый 10.03.2011, 11:51
Новичок на форуме
Отправить личное сообщение для fantazista Посмотреть профиль Найти все сообщения от fantazista
 
Регистрация: 10.03.2011
Сообщений: 5

Сообщение от dmitriymar Посмотреть сообщение
fantazista,
рнр код выплняется. вывод на экран не срабатывает-а он и не должен
читай про аякс.внимательно читай-чем он отличается от передачи данных через форму
Ок. спасибо.
А как тогда мне контролировать код. Что php видит эту переменную и сможет внести ее в базу.
У меня, что то наподобие игры. После завершения игры внутри jquery вычисляется баллы. После этого пхп скрипт должен апдейтнуть базу юзера. Вслепую работать неприятно. Буду признателен за подсказку в каком направлении двигаться.
Ответить с цитированием
  #4 (permalink)  
Старый 10.03.2011, 11:54
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,588

http://javascript.ru/ajax
Ответить с цитированием
  #5 (permalink)  
Старый 11.03.2011, 08:46
Аватар для micscr
Профессор
Отправить личное сообщение для micscr Посмотреть профиль Найти все сообщения от micscr
 
Регистрация: 10.09.2009
Сообщений: 1,566

Ставишь Firebug в лисе. Вкладка сеть
Отправляешь запрос и видишь что улетает.
Принимай теперь это на php.
Напиши например
print 'Пришло значение:' . $_POST['myvar'];

и в js это вернется и увидишь работает или нет.
Ответить с цитированием
  #6 (permalink)  
Старый 11.03.2011, 19:29
Новичок на форуме
Отправить личное сообщение для fantazista Посмотреть профиль Найти все сообщения от fantazista
 
Регистрация: 10.03.2011
Сообщений: 5

Немного больше познакомился с ajax.
И теперь хочу вернуть результат обработки сервера обратно и вывести в браузер. Что то опять не так.
Вот js
$('#play2').click(function() {
	//alert ('sdasd');
	var test = 5;
		$.ajax({
		type: "POST",
		url: "controller.php",
		data: {test : test},
		success: function(data){
		$('#result').html(data);
		},
		error: function() {
		alert( "Data not Saved" );
		}
	
		});
	
	});


controller.php
<?php
header('Content-Type: text/html; charset=utf-8');
if(isset($_POST['test'])) {
	
	$x = '<p>проверка связи)</p>';
	return $x;
}
else {
	
	$x = '<p>нет связи</p>';
	return $x;
}


Ничего не возвращает. Если написать html(test). В этом случае просто значение возвращает (5). Хотелось бы понять как вернуть html или же обработав переменную $_POST['test'] вернуть ее обратно.
Ответить с цитированием
  #7 (permalink)  
Старый 11.03.2011, 19:34
Новичок на форуме
Отправить личное сообщение для fantazista Посмотреть профиль Найти все сообщения от fantazista
 
Регистрация: 10.03.2011
Сообщений: 5

Вот данные запросов. Вроде бы ничего и не уходит на сервер.

Response Headers
Date	Fri, 11 Mar 2011 16:33:16 GMT
Server	Apache/2.2.11 (Win32) PHP/5.3.0
X-Powered-By	PHP/5.3.0
Content-Length	0
Keep-Alive	timeout=5, max=98
Connection	Keep-Alive
Content-Type	text/html; charset=utf-8


Request Headersview
Host	localhost
User-Agent	Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.2.15) Gecko/20110303 MRA 5.7 (build 03686) Firefox/3.6.15 WebMoney Advisor
Accept	*/*
Accept-Language	en-gb,en;q=0.5
Accept-Encoding	gzip,deflate
Accept-Charset	ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive	115
Connection	keep-alive
Content-Type	application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With	XMLHttpRequest
Referer	[url]http://localhost/test/[/url]
Content-Length	6
Cookie	vc=8
Pragma	no-cache
Cache-Control	no-cache

Последний раз редактировалось fantazista, 11.03.2011 в 19:37.
Ответить с цитированием
  #8 (permalink)  
Старый 12.03.2011, 02:28
Аспирант
Отправить личное сообщение для Saimon7887 Посмотреть профиль Найти все сообщения от Saimon7887
 
Регистрация: 03.02.2010
Сообщений: 37

$(document).ready(function(){
$('#id_1').click(function(){
    $.ajax({
        url:'file.php',
        type:'POST',
        data:'var1=ext1',
        dataType:'html',
        success:function(html){
            $('#source').html(html);
        }
    });
});
});

Последний раз редактировалось Saimon7887, 12.03.2011 в 02:31.
Ответить с цитированием
  #9 (permalink)  
Старый 12.03.2011, 10:49
Аватар для walik
Профессор
Отправить личное сообщение для walik Посмотреть профиль Найти все сообщения от walik
 
Регистрация: 09.11.2009
Сообщений: 1,101

Сообщение от fantazista
return $x;
Так тебе выводить надо а не возвращать return'ом
echo $x;
__________________
"Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете."
Мой сертификат :-D клацай
Ответить с цитированием
  #10 (permalink)  
Старый 12.03.2011, 13:16
Новичок на форуме
Отправить личное сообщение для fantazista Посмотреть профиль Найти все сообщения от fantazista
 
Регистрация: 10.03.2011
Сообщений: 5

walik,
Да спасибо. Это от незнание сути происходящего происходило. Привык только в php работать.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
jQuery Click() не работает на объекте, созданном Ajax vovabigov jQuery 13 09.09.2012 14:25
JQuery AJAX, поймать разрыв соединения ilya.tk AJAX и COMET 10 30.12.2010 17:13
Не работает jQuery меню с AJAX eugene1986 jQuery 0 08.07.2010 18:49
AJAX запрос на другой протокол Veresc AJAX и COMET 2 18.09.2009 18:47
ajax запрос с подгружемным js HelpeR AJAX и COMET 1 27.10.2008 12:44