malina95
Мастер
Дата регистрации:
15.07.2012 07:13:44
Сообщений: 208
Если надо вот сам код, может кому-то пригодится
if (isset($_GET['search'])) {
$get = $mysqli->real_escape_string(strtolower($_GET['words']));
$results = search($table_lesson, $get);
if (count($results) == 0) $nf = true;
else $nf = false;
}
echo '<h3 class = "center error">Внимание!!! Запрещается вводить в поисковое поле HTML и PHP теги!!!<br />Поисковый запрос должен быть не менее 2 символов!</h3>';
echo '<h2 class = "center">Поиск</h2>';
echo '<form action = "/search.php" method = "get" class = "center">
<input type = "text" name = "words" value = "'.$get.'" style = "height: 25px; width: 300px;" />
<input type = "submit" name = "search" class = "button" value = "Искать" />
</form>';
if (isset($_GET['search'])) {
if ($results === false) echo "Вы задали пустой запрос";
if (count($results) == 0) {
$get = $mysqli->real_escape_string(strtoupper($_GET['words']));
$results = search($table_lesson, $get);
echo "Ничего не найдено";
}
else {
echo 'Поиск: '.$get.'<br />';
echo 'Результатов поиска: '.count($results);
for ($i = 0; $i < count($results); $i++) {
$title = '<h2 class = "center">'.$results[$i]["title"]."</h2>";
$text = replaceBBCode($results[$i]["description"]);
$title = '<h2 class = "center">'.color_search_words($get, $title).'</h2>';
$text = color_search_words($get, $text);
echo $title;
echo $text.'<br />';
}
}
}
И немного отредактированная функция поиска с этого сайта
function search ($table, $words) {
global $mysqli;
connectDB();
$words = htmlspecialchars(strip_tags($words));
if ($words === "" return false;
$words = htmlspecialchars(trim($words));
$query_search = "";
$arraywords = explode(" ", $words);
foreach ($arraywords as $key => $value) {
if (isset($arraywords[$key - 1]))
$query_search .= ' OR ';
$query_search .= '`title` LIKE "%'.$value.'%" OR `text` LIKE "%'.$value.'%" OR `description` LIKE "%'.$value.'%"';
}
$result_set = $mysqli->query("SELECT * FROM $table WHERE (".$query_search.""
$i = 0;
while ($row = $result_set->fetch_assoc()) {
$results[$i] = $row;
$i++;
}
return $results;
}
function color_search_words ($words, $text) {
$text = str_ireplace($words, '<span style = "color: red; font-weight: bold;">'.strtoupper($words).'</span>', $text);
return $text;
}
Я вас ооочень прошу