我一直在互联网上搜索,甚至在网站开发论坛上搜索,但幸运的是我还没有找到解决问题的方法。
这是html代码
<div id='bottom-right-display'>
<ul id='display-app'>
<li><a href='#' class='btn-test-1' id='123'>Testing1</a></li>
<li><a href='#' class='btn-test-2'>Testing2</a></li>
<li><a href='#' class='btn-test-3'>Testing3</a></li>
</ul>
</div>
这是jquery代码
$(".btn-test-1").click(function(){
//with the use of post
$.post("somefile.php",{id,this.id},function(data){
$("#outputarea").load("somefile.php");
});
//or
//with the use of ajax
$.ajax({
type: "POST",
url: "somefile.php",
data: {id:this.id},
success: function(result){
$("#outputarea").load("somefile.php");
}
})
});
这是php代码
<?php
require_once "connection.php";
$sorter = $_POST["id"];//------>THIS IS THE LINE OF CODE WHERE THE ERROR IS STATING ABOUT!!
$retrieve = $conn->prepare("SELECT * FROM `table1` WHERE `id` != '$sorter'");
$retrieve->execute();
$retrieve->bind_result($groupname);
while($retrieve->fetch()){
echo "<li>".$groupname."</li>";
}
?>
问题是使用$ .post或$ .ajax将一个this.id传递给php,但是返回错误说注意:未定义的索引:在C:\ xampp \ htdocs \ somefile.php中的id 当使用加载但使用alert时它显示我想要的结果,我甚至尝试使用isset但它是空的,根本没有数据。如果您知道任何已经回答的问题或解决方案,请将其评论为T_T。
答案 0 :(得分:1)
检查数据是否确实在post请求中。
即
if(isset($_POST['id'])) $sorter = $_POST['id'];
else die('ERROR: No ID set')
然后我还会检查你是否可以通过AJAX向服务器发送数据。否则,请尝试将此代码添加到您的Javascript中。
$(".btn-test-1").click(function(){
var $dta = new FormData();
$dta.append("id",this.id);
$.ajax({
type: "POST",
url: "somefile.php",
data: $dta,
contentType: false,
cache: false,
processData:false,
success: function(result){
$("#outputarea").html(result);
}
})
});
答案 1 :(得分:0)
我认为问题在于您首先发送附加id
的ajax请求,但在成功回调中,您再次请求somefile.php
。第二次没有附上身份证。
相反,您应该使用结果变量从第一个请求获取somefile.php的“输出”。第二个请求不需要。
像这样:
$(".btn-test-1").click(function(){
$.ajax({
type: "POST",
url: "somefile.php",
data: {id:this.id},
success: function(result){
$("#outputarea").html(result);
}
});
});
答案 2 :(得分:0)
您的代码似乎没问题。我无法模拟的一件事是required 'connection.php'
。你能先简化你的PHP代码吗?我的意思是只做echo $_POST['id']
只是为了确保您之前的代码不会影响您的帖子数据。
答案 3 :(得分:0)
将jquery更改为此并尝试:
package lila
object makeTimeout {
implicit val large = 5
}