@kickass77

Как передать значение из ajax на другую страницу?

Здравствуйте.
Подскажите, как это все правильно реализовывается.

Я получаю значение на одной странице и хочу передать это значение на другую страницу.

<script>
	$(document).ready(function(){  
		$("#click_btn" ).click(function(){

			var num = 12345;

			console.log(num);

			$.ajax({  
				url: "test.php",  
				cache: false,  
				data: ({type:"getnum", num:num}),
				success: function(html){  
					setTimeout(function(){ document.location.href = "site.ru/test.php"; }, 2000);
				}  			
			}); 
			return false;
		});
	});  
</script>


В файле test.php:

<?php
  
 
  if($_GET['type'] == 'getnum') {
    $num = $_GET['num'];

     echo $num;
  }


  ?>


И ниже у меня идет html код от test.php страницы, где я хочу работать с $num
Скорее всего, значение передается таким образом, но из-за того, что у меня стоит переход на эту страницу, значения сбрасываются.
  • Вопрос задан
  • 466 просмотров
Пригласить эксперта
Ответы на вопрос 1
Samuello
@Samuello
Учусь WEB программированию.
Если это какие-то просты данные, по типу имя, номер телефона и т.д, то используйте параметры запроса:
success:  function(response){  
    setTimeout(function() {
        document.location.href = `site.ru/test.php?number=${response.number}&name=${response.name}`;
     },  2000);
}


А если это уже более сложные по своей логике и большие по объёму данные, то используйте локальное хранилище:
success:  function(response){
    localStorage.setItem('some_key', JSON.stringify(response.data));

    setTimeout(function() {
        document.location.href = 'site.ru/test.php';
     },  2000);
}

и соответственно получать эти данные на другой странице:
let helloHabr = JSON.parse(localStorage.getItem('some_key'));
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы