[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Автозаполнение поля из БД
WisesT
Доброго дня!
Уважаемые, бьюсь больше недели над этой задачей, но знаний не хватает.
Нужно сделать, что бы в форме ввода заказа (сайт в локальной сети), в поле "Фирма" при вводе нескольких символов (начиная с одного) делалался запрос в бд (в базу клиентов) и выдавался список вариантов.
Хорошим примером такого действа является поисковик Google.
Понимаю, что средствами РНР этого не сделать.
Нагуглил следующее ТЫРК, но за неделю моих эксперементов мне не удалось добиться ни малейшего результата.
Очень надеюсь на вашу помощь. Голова просто кипит.
Код формы ввода:
<form action="?" method="post" name="frt" >
<
table align="center">

<
tr><td class="t2">На когда</td>
<
td> <input type="text" size="50" maxlength="10" name="na_kogda" id="na_kogda" value="<?php echo date('d-m-Y')?>"/><input type="checkbox" name="prioritet" value="1">Приоритет<br></td></tr>

<
tr><td class="t2">Готовность заказа</td>
<
td> <input type="text" size="50" maxlength="50" name="gotovnost" id="gotovnost"/></td></tr>

<
tr><td class="t2">Фирма</td>
<
td> <input type="text" size="50" maxlength="50" name="firma" id="firma"/><input type='button' value='Есть?' onclick="opfunk('prov');"></td></tr></td></tr>

<
tr><td class="t2">Адрес</td>
<
td> <input type="text" size="50" maxlength="100" name="adress" id="adress"/></td></tr>

<
tr><td class="t2">Имя</td>
<
td> <input type="text" size="50" maxlength="50" name="imya" id="imya"/></td></tr>

<
tr><td class="t2">Телефон</td>
<
td> <input type="text" size="50" maxlength="50" name="tel" id="tel"/></td></tr>

<
tr><td class="t2">Вес</td>
<
td> <input type="text" size="50" maxlength="50" name="ves" id="ves"/></td></tr>

<
tr><td class="t2">Куда</td>
<
td> <input type="text" size="50" maxlength="50" name="kuda" id="kuda"/></td></tr>

<
tr><td class="t2">Оплата</td>
<
td>
<
input type="radio" name="oplata" value="Нал"> Наличный расчет<br>
<
input type="radio" name="oplata" value="Безнал" checked> Безналичный расчет<br>
<
input type="radio" name="oplata" value="Получатель"> Оплата получателем
</td></tr>

<
tr><td class="t2">Примечания</td>
<
td> <TEXTAREA type="text" NAME="primechaniya" id="primechaniya" ROWS=8 COLS=50></TEXTAREA> </td></tr>

<
tr><td class="t2">Принял</td>
<
td>
<
table width="100%" border="0">
<
tr>
<
td> <input type="radio" name="prinyal" value="Алена" checked> Алена</td>
<
td> <input type="radio" name="prinyal" value="Дима" > Дима</td>
<
td> <input type="radio" name="prinyal" value="Катя" > Катя</td>
</
tr>
<
tr>
<
td> <input type="radio" name="prinyal" value="Маша Б" > Маша Б</td>
<
td> <input type="radio" name="prinyal" value="Маша Г" > Маша Г</td>
<
td> <input type="radio" name="prinyal" value="Николай" > Николай</td>
</
tr>
<
tr>
<
td> <input type="radio" name="prinyal" value="Оксана" > Оксана</td>
<
td> <input type="radio" name="prinyal" value="Света" > Света</td>
<
td> <input type="radio" name="prinyal" value="Юля" > Юля</td>
</
tr>
</
table>
</
td></tr>

<
tr><td class="t2">Курьер</td>
<
td> <SELECT NAME="kurier" id="kurier">

<?php
require("include/kuriers.txt");
?>


<OPTION value="Не указан" SELECTED>Не указан

</SELECT></td></tr>


<
tr><td colspan="2" align="center"><input type="submit" name="vvod" value="Ввести"/>

<
script type="text/javascript">

<?php
foreach ($data as $c)
{
if (isset($_POST[$c]))
{
?>
document.getElementById('<?=$c ?>'). value = '<?=$_POST[$c]?>';
<?
}
}

?>

</script>


</
td></tr>
</
table>
</
form>

таблица в БД называется clients
имеет поля id (счетчик), firma, adress, tel, fax

важно только название фирмы.

ПС. Буду очень благодарен.



Спустя 11 минут, 27 секунд (7.05.2012 - 10:36) T1grOK написал(а):
jQuery Autocomplete в помощь. Вот неплохой пример http://www.devbridge.com/projects/autocomplete/jquery/

Спустя 16 минут, 15 секунд (7.05.2012 - 10:52) WisesT написал(а):
Это все понятно. Есть скрипты, есть примеры. Но языка я не знаю вовсе. Как прикрутить к своей ситуации - не пойму.
Нужна помощь именно в прикручивании.

Спустя 23 часа, 50 минут, 28 секунд (8.05.2012 - 10:43) WisesT написал(а):
все никак не могу осилить...

Спустя 3 минуты, 53 секунды (8.05.2012 - 10:47) m4a1fox написал(а):
WisesT
Цитата
все никак не могу осилить...

Я искренне вам сочувствую. Но тут задачка не на 20 минут sad.gif . Тут помучаться придется. Так что варианта 2. Либо разбираетесь - предпочтительнее, либо платите - соотвественно...

Спустя 32 минуты, 15 секунд (8.05.2012 - 11:19) WisesT написал(а):
оу, я действительно думал, что задачка простая) Есть ще готовые коды (ссылка в теме), думал нужно только подправить код под мои потребности и все ок. А оказывается не тут то было? О.о
Я бы и сам попробовал, но язык мне неведом вовсе.

Спустя 2 минуты, 16 секунд (8.05.2012 - 11:21) nugle написал(а):
тут аякс беспорно тебе в помощь, сиди разбирайся или как уже отметил m4a1fox - плати. С аяксом могу помочь, но только тогда, когда ты посидишь и поразбираешься

Спустя 15 минут, 10 секунд (8.05.2012 - 11:37) WisesT написал(а):
Цитата (nugle @ 8.05.2012 - 09:21)
тут аякс беспорно тебе в помощь, сиди разбирайся или как уже отметил m4a1fox - плати. С аяксом могу помочь, но только тогда, когда ты посидишь и поразбираешься

ок. Подсказки мне понадобятся.

Спустя 1 час, 47 минут, 2 секунды (8.05.2012 - 13:24) WisesT написал(а):
Подключаю
<script src="js/prototype.js" type="text/javascript"></script>
<script
src="js/scriptaculous/scriptaculous.js?load=effects,controls" type="text/javascript"></script>

На локальной машине в Дэнвере - работает.
На Линуксе - неа...=(

Спустя 18 минут, 48 секунд (8.05.2012 - 13:42) m4a1fox написал(а):
WisesT
На линуксе проблема может быть в путях! Как вариант помей слеши на обратные!

Спустя 11 минут, 26 секунд (8.05.2012 - 13:54) WisesT написал(а):
Да не... тут что-то другое.
Нашел хороший пример автозаполнения.
На дэнвере идет. А в линуксе Ubuntu - нет.
Можно прописать все js файлы в тег <script>
но вот не знаю как прописать вот эту часть
<script src="js/scriptaculous/scriptaculous.js?load=effects,controls" type="text/javascript"></script>
тут похоже несколько файлов подключается

Спустя 47 минут, 33 секунды (8.05.2012 - 14:41) killer8080 написал(а):
Пути в src нужно всегда указывать от корня
<script src="/js/scriptaculous/scriptaculous.js?load=effects%2Ccontrols" type="text/javascript"></script>

Спустя 14 минут, 51 секунда (8.05.2012 - 14:56) WisesT написал(а):
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta
http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>
Ajax автозаполнение</title>

<script
src="js/prototype.js" type="text/javascript"></script>
<script
src="js/scriptaculous/scriptaculous.js?load=effects,controls" type="text/javascript"></script>

</head>

<body
style="padding:30px;">

<style
type="text/css">
div.autocomplete {
position:absolute;
width:250px;
background-color:white;
border:1px solid #888;
margin:0px;
padding:0px;
}
div.autocomplete ul {
list-style-type:none;
margin:0px;
padding:0px;
}
div.autocomplete ul li.selected { background-color: #ffb;}
div.autocomplete ul li {
list-style-type:none;
display:block;
margin:0;
padding:2px;
cursor:pointer;
background:none;
}
</style>

<input
type="text" id="pet" name="pet" style="width:200px" value="" />
<span
id="indicator" style="height:11px; display:none;"><img src="images/1.gif" width="43" height="11" align="absmiddle" alt="Загрузка..." /></span>
<div
id="pet_choices" class="autocomplete"></div>

<script
type="text/javascript">
new
Ajax.Autocompleter("pet", "pet_choices", "pets.php", {paramName: "pet", minChars: 1, indicator: 'indicator'});
</script>

</div>




</body></html>

Это код примера, который работает в Дэнвере,но не равботает на Ubuntu
Может вы что-то узрите.

Спустя 51 секунда (8.05.2012 - 14:57) WisesT написал(а):
killer8080
оно ни в каком варианте не работает)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.