我正忙于学习 ajax。我有一个预订页面和一个结帐页面。
我想做什么
用户在搜索框中输入承租人姓名,匹配的姓名将从数据库中获取并动态显示。
像这样:
reservations.php
当用户单击突出显示的链接时,我希望将预订 ID 传递到结帐页面。因此,我正在寻找一种方法将预订 ID 传递到另一个/不同的页面,我可以将其用于结帐页面上的数据处理。
checkout.php
代码
搜索/JQUERY
$(document).ready(function () {
$("#searchbox").on('keyup',function () {
var key = $(this).val();
$.ajax({
url:'fetch.php',
type:'GET',
data:'keyword='+key,
beforeSend:function () {
$("#results").slideUp('fast');
},
success:function (data) {
$("#results").html(data);
$("#results").slideDown('fast');
}
});
});
});
</script>
<div id="main">
<div id="header"><h1>Find Names</h1></div>
<div id="content">
<input type="search" name="keyword" placeholder="Search Names" id="searchbox">
<div id="results"></div>
</div>
</div>
FETCH.PHP
if($_GET['keyword'] && !empty($_GET['keyword']))
{
$conn = mysqli_connect('localhost','root','','*****'); //Connection to my database
$keyword = $_GET['keyword'];
$keyword="%$keyword%";
$query = "select renter_name from reservations where renter_name like ?";
$statement = $conn->prepare($query);
$statement->bind_param('s',$keyword);
$statement->execute();
$statement->store_result();
if($statement->num_rows() == 0) // so if we have 0 records acc. to keyword display no records found
{
echo '<div id="item">Ah snap...! No results found :/</div>';
$statement->close();
$conn->close();
}
else {
$statement->bind_result($name);
while ($statement->fetch()) //outputs the records
{
echo "<div id='item'>$name</div>";
};
$statement->close();
$conn->close();
};
};
数据库
非常感谢您在实现方面的任何帮助或建议!
最佳答案
只需使用链接和查询。 首先回显链接而不是 div:
echo "<a href='yourpage.php?id=$name'>$name</a>";
然后在你的页面上简单地做:
<?php
echo $_GET[" id"];
?>
关于javascript - 将来自 ajax 调用的 PHP 链接数据发送到不同的页面 onclick,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39373229/