У меня есть таблица с записями, такими как:
123 (DVD)
123 [DVD] [2007]
125 [2009]
189 (CD)
когда я представляю их пользователю в поле автозаполнения, я убираю что-либо между () или [], поскольку они не имеют значения, но, как вы можете видеть из приведенного выше списка, у меня остаются две записи для 123, которые появляются в раскрывающемся списке ... есть ли еще способ подавить дубликаты? Иногда может быть целых 5 или 6, что выглядит неправильно, если не сказать больше! Код ниже:
// db select
$query = "SELECT $title FROM PRprodINFO2 WHERE ((prodcatID = '$cat_id') AND ($title LIKE \"%" . $_GET["q"] . "%\")) group by $title LIMIT 8";
$result = mysql_query($query);
$output_items = array();
// while loop to print results
while($row = mysql_fetch_array($result)) { $output_items[] = $row[$title]; }
$output_items = preg_replace('/\[.*?\]|\s*/', '', $output_items); // remove [blah]
$output_items = preg_replace('/\(.*?\)|\s*/', '', $output_items); // remove (blah)
print(implode("\n", $output_items));
Большое спасибо