Я переломаю этот вопрос в параграфы для более простой справки.Выход данных с использованием Ajax с PHP
У меня есть сценарий, который вызывает php-файл с использованием Ajax; сценарий выполняется после нажатия кнопки.
РНР файл содержит простой код, который плюсы номера с 1
<?php $response = $response + 1; echo $response; ?>
Однако что-то идет не так, когда кнопка нажата несколько раз. Я провел некоторое исследование, и я могу заключить, что что-то не так с простым скриптом PHP, который я сделал, или код выполняется только один раз за каждую перезагрузку страницы.
Я прочитал статью, объясняющую большую работу с использованием Javascript, если я хочу, чтобы команда Ajax выполнялась несколько раз во время одного и того же скрипта, но я не вижу причины, по которой она не может выполняться несколько раз, когда кнопка нажата.
Вопрос: Выполняется ли файл PHP «post.php» при каждом нажатии кнопки? Это что-то с моим файлом PHP? Как я могу сделать скрипт плюс число на 1 каждый раз при нажатии кнопки? И это потому, что для этого мне нужен дополнительный Javascript?
Остальная часть сценария здесь:
<head>
<script>
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("POST","post.php",true);
xmlhttp.send();
}
</script>
</head>
<body>
<p>This button will execute an Ajax function</p>
<button type="button" onclick="loadXMLDoc()">Press here!</button>
<div id="myDiv"></div>
<script type="text/javascript" src="http://www.parameter.dk/counter/5b0d9873158158e08cad4c71256eb27c"></script>
</body>
Если бы я не был достаточно ясно, в какой-то момент, пожалуйста, выбрать номер пункта и я буду углубляться эту часть.
Что такое $ response? Что заставляет вас думать, что он увеличится на 1, когда вы будете обращаться к странице несколько раз? Он будет повторно инициализирован каждый раз, когда вы отправляете HTTP-запрос. Ваша проблема в том, что вам нужно, чтобы это продолжалось. –
$ response - это переменная, которую я хочу увеличить на 1 каждый раз при нажатии кнопки. Не будет ли $ response сохранять свою ценность, когда веб-сайт перезагружается, и каждый раз, когда нажимается кнопка? – PHPeter