【发布时间】:2021-01-27 05:53:53
【问题描述】:
我正在这个系统中制作药房系统我将客户信息存储在mysql数据库中 当用户单击 addNewOrder.php 时我想要什么,它显示一个输入字段,用户在其中写入客户端名称以在数据库中搜索并提取其所有信息,例如客户端名称、手机号码和地址我使用 ajax 进行实时搜索搜索结果以表格形式显示在输入字段下方 我希望当用户单击 tr 时,它会在搜索结果中显示所有以表格形式显示的信息 应显示在输入字段中,例如名称应显示在名称输入字段中并显示数字 在数字输入字段中,地址应显示在地址输入字段中以供进一步处理 下面是我尝试的代码。帮助我如何实现这一目标
这是我的 searchClient.php 代码
<?php
include ("config/config.php");
if(isset($_POST['search'])) {
$searchClient = $_POST['search'];
$searchStatement = " SELECT * FROM customers WHERE customer_name LIKE '%$searchClient%'";
$searchQuery = mysqli_query($conn, $searchStatement);
echo "
<table class='table table-hover'>
<tbody>
";
?>
<?php foreach ($searchQuery as $searchResult){ ?>
<tr onclick='fill("<?php echo $searchResult['customer_id'];?><br> <?php echo
$searchResult['customer_name'];?><br><?php echo $searchResult['customer_number'];?><br>
<?php echo $searchResult['customer_address']; ?>")'>
<th scope="row"><?php echo $searchResult['customer_name']; ?></th>
<td><?php echo $searchResult['customer_number']; ?></td>
<td><?php echo $searchResult['customer_address']; ?></td>
</tr>
<?php
}
}?>
这是我的 html 和 ajax 代码
<?php
include_once ("config/config.php");
?>
<!doctype html>
<html lang="en" xmlns="http://www.w3.org/1999/html">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Bootstrap CSS -->
<link href="bootstrap/bootstrap-4.5.3-dist/css/bootstrap.min.css" rel="stylesheet">
<link href="fontawesome-free-5.15.1-web/css/all.min.css">
<link href="site_css/main.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="DataTables/datatables.min.css"/>
<title>Add New Order</title>
</head>
<body>
<?php include("config/navBar.php"); ?>
<div class="container-fluid">
<div class="row">
<div class="col-md-4">
<div class="card mt-4 shadow p-3 mb-5 bg-white rounded">
<div class="card-body">
<div class="card-header bg-dark text-white">Search Client</div>
<form method="post">
<div class="form-group mt-4">
<input type="text" class="form-control js-search" placeholder="Search Client
Here"
id="searchClient" name="searchClient">
<div class="js-search-result"></div>
</div>
</form>
</div>
</div>
</div>
<div class="col-md-8">
<div class="card mt-4 shadow p-3 mb-5 bg-white rounded">
<div class="card-header bg-dark text-white">
Client Information
</div>
<div class="card-body">
<p class="js-result-name"></p>
</div>
</div>
</div>
</div>
<?php include("config/scripts.php") ?>
<script>
function fill(value){
$(".js-result-name").html(value);
$(".js-search-result").hide();
$(".js-search").val("");
}
$(document).ready(function(){
$(".js-search").keyup(function (){
var searchItem = $(this).val();
$.ajax({
//url: "searchExample.php",
url: "searchClient.php",
type: "post",
data : {
search: searchItem,
},
//dataType: "json",
success: function(data){
$('.js-search-result').html(data).show();
}
});
});
});
</script>
</body>
</html>
【问题讨论】:
-
您的代码中的输入字段在哪里?
-
这是一个问题,我如何在输入字段中显示数据我没有添加输入字段但输入字段应该替换为类名,即 js-result-name 目前它显示结果
标签: javascript php ajax