У меня есть база данных, в которой есть огромные данные, такие как более 1000, и она будет увеличиваться позже.
Я показываю некоторые из этих данных в таблице.есть окно поиска, которое я использую для загрузки данных из базы данных в эту таблицу с помощью ajax-вызова в соответствии с окном поиска.
my FORM:
<form class="form-search" role="search" action="#" >
<div class="form-group">
<input type="text" class="form-control" id="eml_search" placeholder="Search " name="eml_search">
<input type="submit" name="btn-search-email" id="btn-search-email" value="" style="display: none;" />
</div>
</form>
jQuery Ajax:
$(document).ready(function () {
$('form.form-search').on('submit', function(e) {
e.preventDefault();
var eml_search_txt = $("#eml_search").val();
url = "ajax_search.php";
$.ajax({
url: url,
type: "GET",
data : {
eml_search_txt: eml_search_txt
},
dataType: "json"
}).done(function (data) {
console.log("Dhukse: " );
$("#eml-body table").remove();
console.log("TExt get: " + data.getext);
console.log(data.mail_list);
$("#eml-body").html(data.search_list);
});
});
});
ajax_search.php:
include("connect.php");
$eml_search_txt = $_GET['eml_search_txt'];
$output = "";
$output .= "<table class='table table-striped table-inbox eml-overview' >";
$output .= "<thead>";
$output .= "<tr><th>Thead1</th><th>Thead2</th><th>Thead3</th></tr>";
$output .= "</thead>";
$output .= "<tbody>";
$search_query = "SELECT * FROM table_data WHERE data_from LIKE '%".$eml_search_txt."%' OR
data_sub LIKE '%".$eml_search_txt."%' ORDER BY data_date DESC LIMIT 9 ";
$search_sql = mysqli_query($conn, $search_query);
while($row = mysqli_fetch_assoc($search_sql)) {
$data_date = date("Y-m-d", strtotime($row['data_date']));
$uid = $row['uid'];
$data_from = $row['data_from'];
$data_sub = $row['data_sub'];
$output.= "<tr>";
$output.= "<td>".$data_from."</td>";
$output.= "<td>".$data_sub."</td>";
$output.= "<td>".$data_date."</td>";
$output.= "</tr>";
}
$output .= "</tbody></table>";
$json='{"search_list":"'.$output.'", "getext":"'.$eml_search_txt.'"}';
print $json;
этот вызов ajax в php-файле работает нормально, если я ограничу возврат до 9строк, например:
SELECT * FROM table_data WHERE data_from LIKE '%".$eml_search_txt."%' OR
data_sub LIKE '%".$eml_search_txt."%' ORDER BY data_date DESC LIMIT 9
Но если вы хотите вернуть все строки или более 9 строк в соответствии с поисковой строкой, это ничего мне не возвращает.
Насколько я понимаю,если для возврата данных ajax-вызову требуется много времени, он вообще ничего не возвращает, например, возврат всех строк из базы данных в соответствии с поиском занимает несколько раз.
Может ли кто-нибудь помочь мне в этом случае?как я могу получить все результаты, чтобы показать в соответствии с поиском?