фильтровать поиск с помощью переключателя PHP SQL

У меня есть список поиска, в котором работает свойство. Их поиск работает в соответствии с поиском, если искомое слово похоже на имя, семью и работу. теперь я хочу слишком разобрать этот поиск. я имею в виду, твой три переключателя. при совпадении первого поиска кнопки по имени, второму, поиску по семейству и третьему поиску по заданию.

поэтому мой базовый код здесь:

здесь нужно добавить три переключателя. (Searchform.php)

<form name="form1" dir="rtl" method="post" action="searchresults.php"> <label for="search"> search </label> <input name="search" type="text" size="40" maxlength="50" placeholder="you can search"> <input type="submit" name="submit" value="search"/> <br/> </form> 

и поисковая треска находится здесь:

searchresult.php

 <?php $db_host = 'localhost'; $db_name= 'site'; $db_table= 'tablesite'; $db_user = 'root'; $db_pass = ''; $con = mysql_connect($db_host,$db_user,$db_pass) or die("خطا در اتصال به پايگاه داده"); $selected=mysql_select_db($db_name, $con) or die("خطا در انتخاب پايگاه داده"); mysql_query("SET CHARACTER SET utf8"); $dbresult=mysql_query("SELECT tablesite.name, tablesite.family, job_list.job_name, FROM $db_table INNER JOIN relation on tablesite.id_user=relation.user_id INNER JOIN job_list on relation.job_id=job_list.job_id WHERE job_name LIKE '%".$_POST['search']."%' OR name LIKE '%".$_POST['search']."%' OR family LIKE '%".$_POST['search']."%'",$con); ?> <title>نتایج جستجو</title><fieldset class="fdex" dir="rtl"> <legend><span class="style4">نتایج جستجوی مشاغل</span></legend> <?php while ($row = mysql_fetch_array($dbresult, MYSQL_ASSOC)) { printf("نام: %s %s &nbsp&nbsp&nbsp شغل: %s &nbsp&nbsp&nbsp شماره تلفن: %s <br>", $row["name"], $row["family"], $row["job_name"], $row["phone_number"]); } ?> 

как вы видите, в этом методе поиска, когда пользователь пишет в поле поиска, например, в школе, он находит все результаты в школе, которые могут быть родственниками человека. soo мне нужно отделить этот поиск до трех радиопотоков. имя, вторая семья, третья работа.

Solutions Collecting From Web of "фильтровать поиск с помощью переключателя PHP SQL"

Просто добавьте переключатели в форму.

 <form name="form1" dir="rtl" method="post" action="searchresults.php"> <label for="search"> search </label> <input name="search" type="text" size="40" maxlength="50" placeholder="you can search"> <input type="radio" name="search_type" value="job_name" checked="checked">Job<br> <input type="radio" name="search_type" value="family">Family<br> <input type="radio" name="search_type" value="name">Name <input type="submit" name="submit" value="search"/> <br/> </form> 

И используйте поле post и значение в вашем sql-запросе. mysql обесценивается, поэтому вы должны использовать mysqli, и очень важно, чтобы вы избегали ввода для предотвращения инъекций.

 $field = mysql_real_escape_string($_POST['search_type']); $value = mysql_real_escape_string($_POST['search']); $sql = "SELECT tablesite.name, tablesite.family, job_list.job_name, FROM $db_table INNER JOIN relation on tablesite.id_user=relation.user_id INNER JOIN job_list on relation.job_id=job_list.job_id WHERE $field LIKE '%".$value."%'"; $dbresult=mysql_query($sql,$con); 

Вы также можете подтвердить значение поиска перед запуском запроса и проверить результат перед прохождением через каждую строку.