【发布时间】:2017-01-15 08:11:16
【问题描述】:
我正忙着学习 ajax。我有一个预订页面和一个结帐页面。
我想做的事
用户在搜索框中输入租用者姓名,匹配的名称从数据库中获取并动态显示。
像这样:
reservations.php
当用户单击突出显示的链接时,我希望将预订 ID 传递到结帐页面。因此,我正在寻找一种将预订 ID 传递到另一个/不同页面的方法,我可以将其用于结帐页面上的数据处理。
checkout.php
代码
搜索/查询
$(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();
};
};
数据库
非常感谢您在实施方面的任何帮助或建议!
【问题讨论】:
-
这将与您已经拥有的非常相似,不同之处在于您需要捕获
click事件,而您现在已经捕获了keyUp事件。究竟是什么问题? -
@jeroen 我需要 1)根据用户单击的名称,从搜索框中的名称匹配中获取 res_id 2)将其传递并填充到结帐屏幕表单字段...希望有意义
-
为什么我要对这个问题投赞成票,我确实在这个问题上付出了很多努力,试图在符合指导方针的同时提供尽可能多的细节。
标签: javascript php jquery mysql ajax