Javascript-форум (https://javascript.ru/forum/)
-   Серверные языки и технологии (https://javascript.ru/forum/server/)
-   -   Не получается передать переменную из js в php (https://javascript.ru/forum/server/75416-ne-poluchaetsya-peredat-peremennuyu-iz-js-v-php.html)

Беляев Антон 06.10.2018 20:37

Не получается передать переменную из js в php
 
HTML:
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<script type="text/javascript" src= "jquery.js"></script>
	<script type = "text/javascript" src = "script.js"></script>
</head>
<body>
	<input id = "form1" type = "text">
	<button id = "button1"></button>
	<div id="div1"></div>
</body>
</html>


JS:
$(document).ready(function(){
	$("#button1").click(function(){
		var data = $("#form1").val();
		$.post("php.php", data);
		$("#div1").load("php.php");
	})
})


PHP:
<?

$data = $_POST["data"];

echo $data;

?>


Описание проблемы - в шапке.

Aetae 06.10.2018 21:38

.post("php.php", data); - это отдельный POST запрос, который возвращает нужный результат, но ты его не забираешь.
.load("php.php"); - это отдельный GET запрос, который возвращает пустую строку(т.к. $_POST пустой) и загружает её в div1.

PHP (сам по себе) ничего не запоминает и каждый запрос выполняет php код заново.

Чтобы получить результат, можно например в .post добавить третьим аргументом функцию-коллбэк. Но для начала лучше разобраться и понять, что именно ты делаешь.


Часовой пояс GMT +3, время: 16:58.