Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/25: Рейтинг темы: голосов - 25, средняя оценка - 4.60
 Аватар для Zotoff
6 / 6 / 1
Регистрация: 12.04.2013
Сообщений: 77

Реализовать вывод данных из MySQL таблицы в выпадающем списке

11.04.2015, 18:56. Показов 4687. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую, уважаемые форумчане.
Возникла проблема. Хочу реализовать вывод данных из mysql таблицы в выпадающем списке, для этого сделал вот такой код:
PHP
1
2
3
4
5
6
7
8
9
10
11
<select name="name" onchange="show_data()">
     <?php
     $query = "SELECT id, dog_breed FROM dogs";
     $sql = mysqli_query($dbc, $query) or die("Ошибка запроса");
     while($row = mysqli_fetch_assoc($sql)) {
echo<<<HTML
<option id = "option" value = "{$row['id']}"> {$row['dog_breed']}</option>;
HTML;
     }
     ?>
</select>
Функция showdata() - просто для проверки значений, которые приходят в <option>.
Суть проблемы такова: {$row['dog_breed']} помещает все значения из таблицы в выпадающий список, а вот value = "{row['id']}" выдает только одно значение - первое, т.е. id = 1 при выборе любого значения из <select>. Гуглил - не нашел подобного случая. Что я сделал не так?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.04.2015, 18:56
Ответы с готовыми решениями:

Вывод кусочка таблицы в listbox по выбору в выпадающем списке combobox
Есть таблица в excel, там №, ФИО и группа. Нужно сделать форму с Combobox(выпадающий список групп) и listbox(вывод таблицы с № и ФИО...

Вывод и редактирование данных в выпадающем списке
Есть функция вывода данных &lt;? $sql = 'SELECT `type` FROM `type`'; $result = mysql_query($sql); // вывод на...

Есть выпадающий список JComboBox. Нужно реализовать эффект фильтрации данных в выпадающем списке по тексту который вводит пользователь
Есть выпадающий список JComboBox. Нужно реализовать эффект фильтрации данных в выпадающем списке по тексту который вводит пользователь. ...

8
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
11.04.2015, 20:12
Цитата Сообщение от Zotoff Посмотреть сообщение
а вот value = "{row['id']}" выдает только одно значение - первое, т.е. id = 1 при выборе любого значения из <select>.
Как Вы определили? Исходный код смотрели? Если да - то уже лучше . А значения ID в БД точно разные? Может там все единицы?
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
12.04.2015, 00:21
+ко всему
Цитата Сообщение от Zotoff Посмотреть сообщение
<option id = "option"
низзя так. Либо class вместо id, либо добавляйте уникальность - циферки там и т.п.: id не должен повторяться где-либо еще на странице.
И, быть может, стоит взглянуть на js-функцию show_data() - может, это она чудит?
0
 Аватар для Zotoff
6 / 6 / 1
Регистрация: 12.04.2013
Сообщений: 77
12.04.2015, 08:19  [ТС]
JavaScript
1
2
3
function show_data() 
{var val = document.getElementById('option').value;
 alert(val)};
Собственно, чудить тут нечему. Хорошо, id уникален и может быть только один на странице. Я поясню для чего мне это надо: я хотел сделать, чтобы при выборе значения <option>, которое выводится из mySql путем запроса указанного выше, выводилась и цена в соседних <input>, которые я здесь не показал. Для этого я через AJAX хотел направить post на страницу, на которой бы формировался запрос к БД. И для этого же мне нужна привязка к id. Может есть более гуманный и тривиальный способ реализовать это?

Добавлено через 2 минуты
я сделал функцию show_data(), которая alert-ом выводила id. В БД у меня значения id AUTO_INCREMENT, они не могут быть одинаковые
0
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
12.04.2015, 08:27
Цитата Сообщение от Zotoff Посмотреть сообщение
я сделал функцию show_data(), которая alert-ом выводила id
Но так как у Вас много элементом с одинаковым ID (хотя это неправильно), она просто-напросто выводила value первого...
1
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
12.04.2015, 08:38
Цитата Сообщение от Zotoff Посмотреть сообщение
Собственно, чудить тут нечему.
Как раз есть. Как уже сказали выше, всё из-за ID.
Сделайте так:
PHP
1
2
3
4
5
6
7
8
9
10
11
<select name="name" onchange="show_data(this)">
     <?php
     $query = "SELECT id, dog_breed FROM dogs";
     $sql = mysqli_query($dbc, $query) or die("Ошибка запроса");
     while($row = mysqli_fetch_assoc($sql)) {
echo<<<HTML
<option value = "{$row['id']}"> {$row['dog_breed']}</option>;
HTML;
     }
     ?>
</select>
JavaScript
1
2
3
4
function show_data(element){
    var val = element.value;
    alert(val);
}
0
 Аватар для Zotoff
6 / 6 / 1
Регистрация: 12.04.2013
Сообщений: 77
12.04.2015, 11:54  [ТС]
Цитата Сообщение от pav1uxa Посмотреть сообщение
Но так как у Вас много элементом с одинаковым ID (хотя это неправильно), она просто-напросто выводила value первого...
ок, то что много id - не есть хорошо, я уже понял, собственно и знал Суть в другом: как мне сделать, чтобы в выпадающем списке передавалось разное id, соответствующее id строк из таблицы mysql?
0
1 / 1 / 1
Регистрация: 08.02.2017
Сообщений: 55
12.03.2019, 19:35
Добрый день!
Подскажите кто знает.
Есть код в котором реализован выпадающий список соответствующий значению поля в mysql.
Далее в скрипте производится вывод выбранного значения из меню.
Вопрос.
Как реализовать так, что бы при выборе значения поля Nazva_TC отобразилось значение поля marka_TC?
Спасибо.
=============сам код=============
<select name="Nazva_TC" id="Nazva_TC" required="required" onchange="this.form.submit() title = "Выберите номер ТС">
<option value=""> Выберите Номер ТС </option>

<?
$sql = "SELECT Nazva_TC FROM `tc_basa`";
$result = mysql_query($sql) or die(mysql_error());
while ($row=mysql_fetch_assoc($result))
{
echo "<option value='".$row['Nazva_TC']."'>".$row['Nazva_TC']." </option>";
$insert_sql = "INSERT INTO pl (Nazva_TC)"." VALUES ('{$Nazva_TC}'));";
mysql_query($insert_sql);
print_r($row);
echo $sql;
}
?>
</select>
<td>Наименование ТС</td>
<p id="value-selected"></p>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(function(){
$("select[name=Nazva_TC]").on("change", function () {
var valueSelected = $(this).val();
$("#value-selected").html(valueSelected);
});
});
</script>
0
1 / 1 / 1
Регистрация: 08.02.2017
Сообщений: 55
13.03.2019, 20:07
Добрый день!
Подскажите кто знает.
Есть код в котором реализован выпадающий список соответствующий списку значений поля Nazva_TC.
Далее в скрипте производится вывод выбранного значения из меню и последующее отображение выбранного пункта.
Вопрос.
Как реализовать так, что бы при выборе значения поля Nazva_TC отобразилось значение поля marka_TC в этой же таблице?
Спасибо.
=============сам код=============
HTML5
1
2
<select name="Nazva_TC" id="Nazva_TC" required="required" onchange="this.form.submit() title = "Выберите номер ТС">
<option value=""> Выберите Номер ТС </option>
PHP
1
2
3
4
5
6
7
8
9
10
11
12
<?
$sql = "SELECT Nazva_TC FROM `tc_basa`";
$result = mysql_query($sql) or die(mysql_error());
while ($row=mysql_fetch_assoc($result))
{
echo "<option value='".$row['Nazva_TC']."'>".$row['Nazva_TC']." </option>";
$insert_sql = "INSERT INTO pl (Nazva_TC)"." VALUES ('{$Nazva_TC}'));";
mysql_query($insert_sql);
print_r($row);
echo $sql;
}
?>
HTML5
1
2
</select>
<td>Наименование ТС</td>
<p id="value-selected"></p>
JavaScript
1
2
3
4
5
6
7
8
9
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(function(){
$("select[name=Nazva_TC]").on("change", function () {
var valueSelected = $(this).val();
$("#value-selected").html(valueSelected);
});
});
</script>
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.03.2019, 20:07
Помогаю со студенческими работами здесь

Реализовать функцию выбранной даты рождения в выпадающем списке
Всем доброго времени суток! Скажите, как реализовать функцию выбранной даты рождения в выпадающем списке? &lt;?php $monthOptions =...

Реализовать в выпадающем списке ComboBox'а поиск по любой части слова
Всем доброго времени суток! Хочу реализовать в выпадающем списке ComboBox'а поиск по любой части слова, а не только с начала. ...

Вывод значения в соответствии со значением в выпадающем списке
Добрый день! Прошу помочь со следующей задачей. Необходимо создать таблицу, в которой нужно реализовать такую возможность, как: при...

Реализовать выпадающий список, содержимое которого зависит от выбора в другом выпадающем списке
Здравствуйте, мне нужен выпадающий список. ( можно на HTML ) Человек выбирает в 1 выпадающем списке Mersedes и во втором выпадающем...

Отображение данных в выпадающем списке
Добрый день всем ) Подскажите, пожалуйста, какой компонент нужно использовать для того, чтобы организовать следующее: Из БД...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru