Aligatro
@Aligatro
Turn food and coffee into software...

Как сделать php логическую конструкцию на основе ajax ответа?

И снова приветствую вас дорогие друзья.
Собственно сабж. Подскажите пожалуйста, как на основе значения возвращаемого через ajax обработчик, создать логическую конструкцию на php используя движок wordpress? Вот часть моего рабочего кода, если не затруднит, просмотрите пожалуйста и посоветуйте, что можно сделать.

function ad_blockit() {
// получаем значение через ajax и присваиваем переменную
$blocker = $_POST['bar_blocked'];
// К сожалению обязательное условие, без echo, json_encode или print, код возвращает пустое значение
echo $blocker;
// забываем о шансе на возврат значения, так как след обязательное условие wp, убиение столь юной функции
die();
}

// жалкие попытки сделать функцию которая возвращала  бы true или false.
function checkeradv() {
// к сожалению невозможно, так как ad_blockit мало того, что по дефолту выводит значение ajax ответа, так еще и совсем пуста, из-за die(); в конце функции =(
if (ad_blockit() == true)
// бесполезная строка, но как нельзя лучше иллюстрирующая  мою беспомощность =)
return true;
}


Если к кому-то в голову пришла светлая идея после ознакомления вопроса, прошу не томите, рассказывайте все как есть, а то я еще совсем мал и юн и много чего не понимаю. Заранее выражаю огромную благодарность за оказанную мне помощь.
  • Вопрос задан
  • 2721 просмотр
Решения вопроса 1
success: function(data) {
if ( data === 'ok' ) {
// делаем если ok
} else {
// иначе
}
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Что значит забываем о шансе? "echo" как раз таки и будет ответом сервера на данный ajax запрос.
Ответ написан
@zayac_agito
Как сделать php логическую конструкцию на основе ajax ответа?

У вас в коде не ответ на ajax, а ajax запрос на сервер.
Забираете его и делайте что хотите. И отвечаете на него echo.
И не нужно столько лишних слов, ужас какой то.
Ответ написан
Aligatro
@Aligatro Автор вопроса
Turn food and coffee into software...
Ребят, я еще плохо разбираюсь в js и php поэтому и прошу помочь. За излишнее графоманство, простите.
Я немного не понимаю что значит echo и есть ответ сервера. В моей голове, такая картина. Из js файла при помощи ajax (json) я вытаскиваю какие-то данные и передаю их на сервер, после чего в php я эти данные забираю и делаю с ними все что хочу. А выходит, что эти данные я могу вывести только как текст при помощи echo print json_encod и т.д. Объясните пожалуйста как забрать данные и например присвоить их значение переменной в php?

На всякий случай оставлю полный код.

jQuery(document).ready(function($) {
 if ($.adblockJsFile === undefined){
bar_blocked=true;
} else {
bar_blocked=false;
}


jQuery.ajax({
			type: "POST",
			data: {
                action: 'ad_blockit',
                bar_blocked: bar_blocked,
			},
			dataType: "json",
			url: "/wp-admin/admin-ajax.php",
			success: function( response ) {
		alert( response );
	}
		});	  	
});


function ad_blockit() {
$blocker = $_POST['bar_blocked'];
echo $blocker;
die();
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы