Ajax отправка переменной в php неопределенный индекс - PullRequest
0 голосов
/ 12 декабря 2011

Я бы хотел отобразить переменную num на странице php.

Я получаю следующую ошибку:

Примечание: неопределенный индекс: num в C: \ xampp \ htdocs \ javas.php в строке 4

PHP:

<?php 
$lol = $_POST['num'];
echo "$lol " ;
?>

HTML / JavaScript:

<html>
<head>
<script language="JavaScript" type="text/javascript">
function ajax_post(){
// Create our XMLHttpRequest object
var hr = new XMLHttpRequest();
// Create some variables we need to send to our PHP file
var url = "javas.php";
var num = "lol";

hr.open("POST", url, true);
// Set content type header information for sending url encoded variables in the request
hr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
// Access the onreadystatechange event for the XMLHttpRequest object
hr.onreadystatechange = function() {
    if(hr.readyState == 4 && hr.status == 200) {
        var return_data = hr.responseText;
        document.getElementById("status").innerHTML = return_data;
    }
}
// Send the data to PHP now... and wait for response to update the status div
hr.send(num); // Actually execute the request
document.getElementById("status").innerHTML = "processing...";
}
</script>
</head>
<body>
<h2>Ajax Post to PHP and Get Return Data</h2>

<input name="myBtn" type="submit" value="increment" onClick="javascript:ajax_post();">
<br /><br />
<div id="status"></div>
</body>
</html>

Ответы [ 2 ]

3 голосов
/ 12 декабря 2011

Вам необходимо отправить пары имя / значение

hr.send ("num =" + num);

0 голосов
/ 12 декабря 2011

Одна из проблем здесь заключается в том, что публикуемый вами параметр неправильно сериализован. Строка параметра для POST аналогична строке запроса для запроса GET:

var1=foo&var2=bar

В нынешнем виде вы просто отправляете необработанный фрагмент данных (значение, присвоенное переменной num.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...