Здравствуйте (просмотрел аналогичную тему но пока не вкурил), усваиваю php, но тут же наткнулся на проблему с обновлением Selecta. Задача следующая: Есть 3 Select при выборе Select_1 обновляется Select_2, при выборе Select_2 обновляется Select_3 при чем все это обновление происходит с чтением таблиц из БД. В php я с одним Select разобрался: <select name="category"> <?php if ($res = mysql_query("SELECT * FROM `categories` ORDER BY `name`")) { while ($row = mysql_fetch_assoc($res)) { echo '<option value="'.$row['id'].'">'.$row['name'].'</option>'; } } ?> </select> Потом вывожу его: <?php if ($_GET) { if ($res = mysql_query(" SELECT * FROM `items` WHERE `category`='".addslashes($_GET['category'])."' ORDER BY `name` ")) { if (mysql_num_rows($res) == 0) echo "<p>По вашему запросу ничего не найдено.</p>"; else { echo '<br />'. '<table class="query_result">'. '<col />'. '<col width="100%" />'. '<col />'. '<tr>'. '<th>id</th>'. '<th>Наименование</th>'. '<th>Количество</th>'. '</tr>'; while ($row = mysql_fetch_assoc($res)) { echo '<tr>'. '<td>'.$row['id'].'</td>'. '<td>'.$row['name'].'</td>'. '<td>'.$row['quantity'].'</td>'. '<tr>'; } echo '</table>'; } } } ?> Как реализовать в JC вроде как понимаю, что необходимо в Select работать когда он меняется (событие OnChange), но как это все реализовать с трудом представляю. Я чайник, но продвинутый (со свистком) в JC, да и в php в принципе тоже поэтому буду благодарен любой помощи (линки на хорошую лит-ру, советы и названия хороших книг и, естественно примеры кода, т.к. по протоптанной дороге шагать быстрее)
Kocapb При чем тут таблицы? Тебе сначала нужно из таблицы получить все значения селкетов, потом с помощью JS подставлять нужные. Вот пример реализации из той темы, приведеный к удобочитаемому виду: HTML: <form name="languages"> <select onchange="langform_rebuild(this.options[this.selectedIndex].value);"> <option value="0">Язык</option> <option value="1">HTML</option> <option value="2">PHP</option> </select> <select name="paragraph"> <option value="0">Раздел</option> <!-- Функция подстановки полей в зависимости от значения вызывающего функцию поля --> <script language="javascript"> [js]function langform_rebuild(b) { switch (b) { case '0': with (languages.paragraph) { options.length = 0; options[0] = new Option('Раздел', '0'); selectedIndex = 0; }; break; case '1': with (languages.paragraph) { options.length= 0; options[0]= new Option('Раздел','0'); options[1]= new Option('Текст','1'); options[2]= new Option('Графика','2'); options[3]= new Option('Стили','3'); selectedIndex=0; }; break; case '2': with (document.languages.paragraph) { options.length= 0; options[0]= new Option('Раздел','0'); options[1]= new Option('Переменные','1'); options[2]= new Option('Функции','2'); options[3]= new Option('ООП','3'); selectedIndex=0; }; break; } }[/js] HTML: </script> </select> </form> Если не хочешь сразу все загружать из БД - то к сожалению с AJAX'ом ничем помочь немогу.
со статическим списком более или менее понятно как работать, но куда тут запихивать SQL код для чтение данных из БД ? у меня все данные хранятся в БД(MySQL) и как из них считывать данные и впихивать в сложный Select я не понимаю. В один Select я заполнил но как обновить другой ума не приложу. Получается надо только через Ajax работать?
пролистал очередную книгу про AJAX, обе найденные мной излагали AJAX применимо к структуре xml документа. Передо мной стоит задача использования AJAX для работы с БД MySQL. Уважаемые господа объясните как все это происходит с MySQL (на примере если возможно)? Если нельзя такое делать, поставлю вопрос так: Каким образом данные из SQL залить в xml документ и стоит ли это делать? Если вдруг кто-то знает другой механизм пожалуйста помогите. Если кто-то знает лит-ру - линкните.
Так поделись решением, а то в каждой подобной теме написано, что решение найдено, а решения я так ни одного и не нашел У тебя получилось совместить аякс с БД или ты пошел по другому пути?