Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Автодополнение текста при поиске 
:(
    Опции темы
helflip
  Дата 19.12.2006, 11:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 146
Регистрация: 14.5.2006
Где: Moscow

Репутация: нет
Всего: 4



Хороший пример автодополнения текста как на googlesuggest.
Советую закрепить, т.к. очень интересная вещь и полезная.
Код

<?php
/********************************************************************
*                        Search module                                *
*                    Copyright Andrei Parinov                        *
*                       http://www.nexe.ru/                            *
*                    Построенно на jsPrototip                        *
*                Скачать библиотеку можно тут                        *
*        http://script.aculo.us/dist/scriptaculous-js-1.6.5.zip        *
*        В блоках помеченых  ###..., вы можите что то изменять        *
*                В других местах несоветую                            *
*            С вопросами стучите в асю 299-338-449                    *
*********************************************************************/

//Вставьте этот блок в шаблон
/*#####################################################################
<B style="font-family: Arial, Verdana; font-size: 12px; color: black; font-weight: bold;">Поиск:</B><br><input id="ac5" type="text" autocomplete="off" name="searchfam"/>
<div id="ac5update" style="font-family: Arial, Verdana; font-size: 10px; color: black; font-weight: bold;display:none;border:0px solid black;background-color:#ffffcc;height:auto;overflow:auto;"></div>
<?php require("search.php");?>
<input type="submit" value="Найти" name="search" class="button">    
######################################################################*/

//Данные для подключения к БД
#####################################################
$host = "";//Хост
$login = "";//Логин для доступа к базе
$password = "";//Пароль для доступа к базе
$db = "";//Имя базы данных
$table = "";//Имя вашей таблицы
#####################################################

//Подключение к базе
#####################################################
$text=$msconnect=mssql_connect($host,$login,$password);
$msdb=mssql_select_db($db,$msconnect); 
$mszapros = "SELECT *
             FROM $table
             ORDER BY fuser";//Здесь выберите по какому полю сортировать.
#####################################################

$msqwery1 = mssql_query($mszapros);//Запрос на выборку данных

while ($row = mssql_fetch_array($msqwery1))//Перебебор данных
{
    //занесение данных в массив aCities
#####################################################
    $aCities[] = array(
                 'field1' => $row['fuser'],
                 'field2' => $row['nuser']);  //Здесь впишите ваши поля из базы, по которым производить поиск
}
//print_r($aCities);
//Дальше идет JavaScript
?>
<script type="text/javascript" language="javascript" charset="windows-1251">
  new Autocompleter.Local('ac5','ac5update',
  <?
  
  $str = 'new Array(';//создаем новый массив
  $end = ')';
  $tmp = '';
  foreach ($aCities as $key2 => $val2) {//Перебираем массив с данными
    if($tmp == '') {
#####################################################
        $tmp = '"'.$val2['field1'].'","'.$val2['field2'].'"';//Здесь ваши данные, если они первые в массиве
    } else {
        $tmp .= ', "'.$val2['field1'].'","'.$val2['field2'].'"';//Здесь ваши данные, если они непервые в массиве
#####################################################
    }
  }
  $res = $str.$tmp.$end;//результат

  echo $res;//выводим полученный массив
  ?>, { tokens: new Array(), partialSearch: true });//функция поиска jsPrototip
  
</script>



Это сообщение отредактировал(а) helflip - 20.12.2006, 15:25
--------------------
 
PM MAIL   Вверх
helflip
Дата 20.12.2006, 09:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 146
Регистрация: 14.5.2006
Где: Moscow

Репутация: нет
Всего: 4



Чего таже ни кто не заценит smile  smile 
--------------------
 
PM MAIL   Вверх
kaa
Дата 20.12.2006, 11:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 817
Регистрация: 5.11.2005

Репутация: нет
Всего: 2



helflip, А куда там в шаблоне текст вводить? Прошу прощения за ламерский вапрос - я тока начинающий smile

PM MAIL   Вверх
helflip
Дата 20.12.2006, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 146
Регистрация: 14.5.2006
Где: Moscow

Репутация: нет
Всего: 4



Вставь этот кусок кода где нибудь:
Код

<B style="font-family: Arial, Verdana; font-size: 12px; color: black; font-weight: bold;">Поиск:</B><br><input id="ac5" type="text" autocomplete="off" name="searchfam"/>
<div id="ac5update" style="font-family: Arial, Verdana; font-size: 10px; color: black; font-weight: bold;display:none;border:0px solid black;background-color:#ffffcc;height:auto;overflow:auto;"></div>
<?php require("название странички поиска(той которая выше))");?>
<input type="submit" value="Найти" name="search" class="button"> 


И потом обработай событие на нажатие кнопки smile 

Это сообщение отредактировал(а) helflip - 20.12.2006, 15:27
--------------------
 
PM MAIL   Вверх
helflip
Дата 20.12.2006, 15:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 146
Регистрация: 14.5.2006
Где: Moscow

Репутация: нет
Всего: 4



и еще вот это засунуть в тег <head>
Код

<script src="lib/prototype.js" type="text/javascript"></script>
  <script src="src/scriptaculous.js" type="text/javascript"></script>
  <script src="src/unittest.js" type="text/javascript"></script>
  <style type="text/css" media="screen">
    .selected { background-color: #446B96; }
  </style>



теперь все!
--------------------
 
PM MAIL   Вверх
12345c
Дата 20.12.2006, 17:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 3
Всего: 101



Можем поместить эту тему в раздел "Наши скрипты" (закрепить - просто места не останется для пары десятков подобных).

С моей стороны - сомнение с точки зрения полезности. Ни один из скриптов из того раздела не построен на библиотеке. Для этого - надо тащить с собой одну конкретную библиотеку для реализации. Явно, она нужна не вся. Он мог бы стать полезным, если бы включал в себя все действительно необходимые функции и не содержал лишних.
PM WWW   Вверх
helflip
Дата 20.12.2006, 21:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 146
Регистрация: 14.5.2006
Где: Moscow

Репутация: нет
Всего: 4



По любому это надо делать при помощи AJAX или prototip.JS, а это как известно библиотеки ГЫ) smile 
--------------------
 
PM MAIL   Вверх
12345c
Дата 20.12.2006, 21:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 3
Всего: 101



Вовсе нет, из  слова "Ajax" не следует "библиотека", это - 20 строчек кода стандартной процедуры. (Пишите "prototype.js", иначе не поймут, о чём речь, я тоже не понял поначалу.)

Добавлено @ 21:33 
Потом, библиотек с Аяксом более 10 активно используемых. Если кто-то пользуется одной, ему придётся переделывать код и заглядывать в мануал, а тот, кто не пользуется, тому придётся просто заглядывать в мануал библиотеки. В общем, всем придётся заглядывать (если захотят), кроме тех, кто уже заглядывал. При этом задача, повторюсь, не требует таких жертв.
PM WWW   Вверх
helflip
Дата 21.12.2006, 08:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 146
Регистрация: 14.5.2006
Где: Moscow

Репутация: нет
Всего: 4



Ну всеравно полезный скрипт smile 
--------------------
 
PM MAIL   Вверх
12345c
Дата 21.12.2006, 15:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Круглый
****


Профиль
Группа: Vingrad developer
Сообщений: 2018
Регистрация: 26.12.2005
Где: наша не пропадала ?

Репутация: 3
Всего: 101



Помещаю тему в "Наши скрипты" и попросим написать отзыв того, кто его будет использовать. smile
PM WWW   Вверх
helflip
Дата 22.12.2006, 10:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 146
Регистрация: 14.5.2006
Где: Moscow

Репутация: нет
Всего: 4



Давайте народ, попробуйте, зацените. Очень солидно выглядит на сайтах с большым списком чего либо, лично я использую на работе, где очень большой список сотрудников, больше трех тысяч. smile 
Пользуйтесь, не стесняйтесь smile 
--------------------
 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Применение библиотек | Следующая тема »


 




[ Время генерации скрипта: 0.0491 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.