我們學習了解了這么多關于PHP的知識,不知道你們對PHP高級檢索功能的實現以及動態(tài)拼接sql是否已經完全掌握了呢,如果沒有,那就跟隨本篇文章一起繼續(xù)學習吧!
PHP高級檢索功能的實現以及動態(tài)拼接sql。完成的功能有:可以單獨根據一個條件查詢,也可以通過多個條件綜合查詢,難點在于動態(tài)拼接sql。
完成的效果
總畫面
單獨根據姓名模糊查詢
單獨根據性別查詢
根據多個條件綜合查詢
前臺頁面代碼
<form action="" method="post"> <labal>姓名:</labal> <input style="width:105px" type="text" name="search_name" id="search_name" placeholder="姓名">   <labal>性別:</labal> <input type="radio" name="search_sex" id="man" value="0">男 <input type="radio" name="search_sex" id="women" value="1">女   <labal>年齡:</labal><input style="width:105px" type="text" name="search_age" id="add_age"placeholder="年齡">   <labal>郵箱:</labal><input style="width:150px" type="text" name="search_email" id="search_email" placeholder="郵箱"> <input id="b" name="submit" style="width:60px" type="submit" value="檢索"> </form>
后臺處理代碼
//接收用戶輸入的數據$name = $sex = $age = $email = "";if (isset($_POST['submit'])) { if (isset($_POST['search_name'])) { $name = $_POST['search_name']; } if (isset($_POST['search_sex'])) { $sex = $_POST['search_sex']; } if (isset($_POST['search_age'])) { $age = $_POST['search_age']; } if (isset($_POST['search_email'])) { $email = $_POST['search_email']; }//執(zhí)行檢索sql$search_sql = $myTest->searchData($name,$sex,$age,$email);$result = $myTest->sqlRun($search_sql);
動態(tài)拼接sql
public function searchData($name,$sex,$age,$email){ switch ($name) { //未輸入姓名 case null: $name_info=''; break; //根據姓名模糊查詢 default: $name_info=" and name LIKE '%".$name."%'"; break; } switch ($sex) { //未輸入性別 case null: $sex_info=''; break; //根據性別準確查詢 default: $sex_info=' and sex='.$sex; break; } switch ($age) { //未輸入年齡 case null: $age_info=''; break; //根據年齡準確查詢 default: $age_info=' and age='.$age; break; } switch ($email) { //未輸入郵箱 case null: $email_info=''; break; //根據郵箱模糊查詢 default: $email_info=" and email LIKE '%".$email."%'"; break; }$search_sql='SELECT * FROM users WHERE 1=1'.$name_info.$sex_info.$age_info.$email_info;'';return $search_sql; }
相關學習推薦:mysql教程(視頻)