Andrey_Tech
@Andrey_Tech

Как php переменной присвоить js результат из ajax?

Добрый день!
Начал рабираться с ajax, и есть такая проблема, которую я не пойму как решить
есть кнопка:
<button class="btn btn-primary btn-lg my_basket_call" id="<?=$arItem['ID']?>" data-toggle="modal" data-target="#myModal">Отправить</button>

при нажатии на какую выполняется код js:

$(document).ready(function(){
/* тут считывается параметр который передается атрибутом id в кнопке */
	$('.my_basket_call').on('click', function(){
		var idclick = $(this).attr("id");	
	});
/* тут же идет запрос ajax на полученный id и отправка в документ request.php */
	$('.my_basket_call').bind('click', function(){
		var idclick = $(this).attr("id");
		console.log(idclick);
		$.ajax({
			url: 'request.php',
			type: 'POST',
			data: ({cat: idclick}),
			dataType: 'html',
			beforeSend: funcDown,
			success: succesEnd
		});
	});
});


в request.php:
<?
			if($_POST['cat'])
			{			
				$res = $_POST['cat'];
				echo $res;
				
			}		
 ?>

Вопрос, как мне полученный результат вернуть на страницу запроса(index.php) в файле request.php, точнее поместить её в php переменную и вывести отдельно?
  • Вопрос задан
  • 931 просмотр
Пригласить эксперта
Ответы на вопрос 5
@McBernar
Принимать ответ от AJAX и выводить через JS.

success: function(msg) {
console.log(msg)
}
Ответ написан
1. Послать запрос с этой переменной на нужный скрипт;
2. Вместо выполнения асинхронного запроса на JS, выполнять его на PHP с помощью cURL.
Ответ написан
webinar
@webinar Куратор тега PHP
Учим yii: https://youtu.be/-WRMlGHLgRg
php генерирует html и отдает браузеру. Именно там уже в браузере, а не на сервере выполняется ajax, который шлет запрос и получает ответ. Соответственно передать туда куда шлет можно через сам запрос, добавив параметры, а вот в первый файл никак, так как он уже отработал, еще до запуска ajax. Я так понимаю Вы в прошлое хотите вернуться. Работать надо не с php, а с html который он отдал.
Если не правильно понял, тогда перепишите
Вопрос, как мне полученный результат вернуть на страницу запроса(index.php) в файле request.php, точнее поместить её в php переменную и вывести отдельно?

потому как не понятно кого ее? И что значит "вывести отдельно".
Ответ написан
Exploding
@Exploding
wtf?
По моему корень зла тут:

function succesEnd(data) {
$ //<---- вот тут
$('.res_cat').text(data);
//И не понятно закрыт ли блок... }???
Ответ написан
Комментировать
carlcox
@carlcox
Fullstack developer
$(function(){
  $('.my_basket_call').on('click', '', function(){
    var idclick = $(this).attr("id");
    console.log(idclick);

    $.ajax({
      url: 'request.php',
      type: 'POST',
      data: 'cat='+idclick,
      beforeSend: funcDown,
      success: function(data){
        $('.xochy_vivesti_tyt').html(data);
      }
    });
  });
});


<?
      if(isset($_POST['cat']) && !empty($_POST['cat']))
      {			
        $res = $_POST['cat'];
        echo $res;        
      }		
 ?>


<div class="xochy_vivesti_tyt"></div>
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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