English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
في هذا الدليل، ستعلم كيفية إنشاء وظيفة بحث قاعدة بيانات حية باستخدام PHP وAjax.
يمكنك استخدام Ajax وPHP لإنشاء وظيفة بحث قاعدة بيانات حية بسيطة، حيث سيتم عرض نتائج البحث عند بدء إدخال بعض الأحرف في مربع البحث.
في هذا الدليل، سنقوم بإنشاء نافذة بحث حية ستبحث في جدول countries وتعرض النتائج بشكل متسلسل. ولكن أولاً، نحتاج إلى إنشاء هذا الجدول.
أ�行اء الاستعلام SQL التالي لإنشاء جدول countries في قاعدة بيانات MySQL.
CREATE TABLE countries ( id INT NOT NULL PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50) NOT NULL );
بعد إنشاء الجدول، ستحتاج إلى استخدامجملة SQL INSERTملء بعض البيانات.
إذا لم تكن مطلعاً عن خطوات إنشاء الجداول، يرجى الرجوع إلىجملة SQL CREATE TABLEالتعليمات، للحصول على تفاصيل حول بناء الجداول في نظام قاعدة بيانات MySQL.
Now, let's create a simple web interface that allows users to search for "countries" in real-time."Available in the table国家/地区Name, as in auto-complete or pre-input.
Create a PHP file named "search-form.php" and place the following code inside it.
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>PHP MySQL Database Real-time Search</title> <style type="text/css"> body { font-family: Arail, sans-serif; } /* Set the style of the search box */ .search-box { width: 300px; position: relative; display: inline-block; font-size: 14px; } .search-box input[type="text"] { height: 32px; padding: 5px 10px; border: 1px solid #CCCCCC; font-size: 14px; } .result { position: absolute; z-index: 999; top: 100%; left: 0; } .search-box input[type="text"], .result { width: 100%; box-sizing: border-box; } /* Formatting result items */ .result p { margin: 0; padding: 7px 10px; border: 1px solid #CCCCCC; border-top: none; cursor: pointer; } .result p:hover { background: #f2f2f2; } </style> <script src="https://code.jquery.com/jquery-1.12.4.min.js"></script> <script type="text/javascript"> $(document).ready(function() { $('.search-box input[type="text"]').on("keyup input", function() { /*更改时获取输入值 */ var inputVal = $(this).val(); var resultDropdown = $(this).siblings(".result"); if(inputVal.length){ $.get("backend-search.php", {term: inputVal}).done(function(data){ //在浏览器中显示返回的数据 resultDropdown.html(data); }); } else{ resultDropdown.empty(); } }); //单击结果项时设置搜索输入值 $(document).on("click", ".result p", function(){ $(this).parents(".search-box").find('input[type="text"]').val($(this).text()); $(this).parent(".result").empty(); }); });