我正在设置一个网站,其中包含一个包含许多按钮的页面。我希望能够单击按钮以使用数据库中的信息填充div。
我已经调整了一些我之前拥有的代码,但它无效。
源javascript和HTML显示在这里:
<script>
function showBiog(key) {
//alert(key);
// Get the search value
var search_value = key
// This time we're going to grab data from a file to display
var filename = "functions/biography.php";
// Send these values
var posting = $.post(filename, { search_term: search_value });
// Display this value in our results container
posting.done(function (data) {
$("#test_results").empty().append(data);
});
}
</script>
<style type="text/css">
.test {
background-color: #B32D2F;
border: thin solid #DBB2B3;
height: 50px;
width: 250px;
}
.testresults {
background-color: #88B32D;
border: thin solid #DBB2B3;
height: 50px;
width: 250px;
}
</style>
</head>
<body>
<div class="test" onClick="showBiog(1)"><p>1</p></div>
<div class="test" onClick="showBiog(2)"><p>2</p></div>
<div class="test" onClick="showBiog(3)"><p>3</p></div>
<div class="test" onClick="showBiog(4)"><p>4</p></div>
Results
<div class="testresults" id="test_results"></div>
传记.php的HTML是
<body>
<?php if (! $_POST["search_term"]) { ?>
<div class="err">
<?php echo $row_Recordset1['firstname']; ?>
</div>
<?php } else { ?>
<?php echo $row_results['firstname']; }?>
</body>
Dreamweaver中的结果的SQL是
SELECT *
FROM pilots
WHERE key LIKE colname
with colname $_POST['search_term']
答案 0 :(得分:0)
很少......
为了确保您向PHP发送正确的信息,您应该尝试类似 $ .post(filename,JSON.stringify({'search_term':key}));
在PHP方面,您可以使用unserialize()解码JSON数据,然后处理您的查询。
只是一个小小的个人注释和建议:如果在POST端没有很好地形成JSON,PHP将什么也得不到,因此它什么都不会返回。在编写AJAX调用时,您应该始终尝试 log 或显示 PHP接收的数据,以确保它被正确接收。否则你可能会在错误的地方追逐一个错误。 ;)