如果你认为这可能是重复的我道歉,但我已经尝试了所有我遇到过的问题并且问题仍然存在 - 这让我很生气!
我基本上想要在命中键时将JS变量传递给PHP变量。
这是我的PHP文件设置(位于http://localhost/quiz/index.php
)
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" ></script>
<head>
<body>
<p>
<?php
$uid = $_POST['userID'];
echo $uid;
?>
</p>
<script src="js/site.js"></script>
</body>
</html>
然后在site.js文件中,我有以下内容:
jQuery(document).ready(function($) {
$(document.body)
.keyup(function() {
var userID = "Jim";
$.ajax({
type: "POST",
url: 'http://localhost/quiz/index.php',
data: { userID : userID },
success: function(data)
{
alert("success!");
}
});
});
});
当然,我想要在按下某个键时在段落中输出JS变量userID值('Jim'),但它只显示:
Notice: Undefined index: userID in C:\xampp\htdocs\quiz\index.php on line 66
然而,当按下某个键时,会弹出“成功”警告。
有谁知道我在哪里出错?如果那是相关的,我正在使用Xampp!
谢谢!
答案 0 :(得分:2)
您需要两个PHP文件(或一个具有一些分支逻辑的文件)。
您收到错误是因为在POST请求中未提交userID
以加载初始页面。
然后,您需要修改JavaScript,以便使用data
执行某些操作,而不仅仅是警告。