0 / 0 / 0
Регистрация: 21.11.2013
Сообщений: 3

Из БД в выпадающий список данные грузятся, а обратно нет (

21.11.2013, 18:13. Показов 838. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача: загрузить в два окна из разных табличек данные, выбрать что-нибудь из первого окна и что-то из другого и эту парочку записать в третью табличку.

Загружаю все в выпадающий список (select), тут все в порядке,
нажимаю кнопку "Добавить" и... во-первых, сама кнопка пропадает, во-вторых, появляется сообщение "Ошибка добавления данных в БД".

Сделала echo ("$id_preceptor $id_section<br> <br>");
чтобы видеть что собственно пытается добавить, данные не верные, хотя хоть что-то выдает...
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
<html>
 
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1251">
<title>Mentors - ввод данных "Кто какие кружки ведет"</title>
</head>
<body bgcolor=#99CCC>
 
<table><td>
<form method='post' action='index.php'>
<input type=submit name="return" value="На главную страницу"/>
</form>
</td><td>
<form method='post' action='admin_main.php'>
<input type=submit name="return" value="На предыдущую страницу"/>
</form>
</td>
</table>
<h1>Ввод данных в базу "Дети"</h1><!--Заголовок HTML-->
<br><b>Выберите какие кружки будет вести педагог</b><br><br><br>
 
</body>
</html>
 
<?php
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
  //Подключаемся к БД
  $host = "localhost";
  $name = "root";
  $password = "";
  $db = "children";
  @mysql_connect($host,$name,$password) or die(mysql_error());
  @mysql_select_db($db) or die(mysql_error());
 
  //Выборка данных из таблицы Кружководы (preceptors)
  $query_prc=mysql_query("SELECT * from preceptors  ORDER BY last_name_prc asc");
  $kolstr_prc=mysql_num_rows($query_prc);
 
  //Создаем выпадающий список для Кружководов
echo ('<select name=spisok_prc maxlength=50 size=1>');
$i=0; 
while ($i < $kolstr_prc)
{  $row_prc=mysql_fetch_array($query_prc);
 
  $id_preceptor = $row_prc['id_preceptor'];
  $last_name_prc = $row_prc['last_name_prc'];
  $first_name_prc = $row_prc['first_name_prc'];
  $middle_name_prc = $row_prc['middle_name_prc'];
  
  echo ("<option value='.$id_preceptor.'>".$last_name_prc.' '.$first_name_prc.' '.$middle_name_prc."</option>");
  $i++;
  }
echo('</select>');  
  
//Выборка данных из таблицы Кружки (sections)
  $query_sct=mysql_query("SELECT * from sections ORDER BY name_sct asc");
  $kolstr_sct=mysql_num_rows($query_sct);
  echo('    '); 
   //Создаем выпадающий список для Кружков
echo ('<select name=spisok_sct maxlength=50 size=1>');
$j=0;
while ($j <$kolstr_sct)
{ $row_sct=mysql_fetch_array($query_sct);
 
  $id_section = $row_sct['id_section'];
  $name_sct = $row_sct['name_sct'];
  $profile_sct = $row_sct['profile_sct'];
  
  echo ("<option value='.$id_section.'>".$name_sct."</option>");
  $j++;
  }
 echo('</select>');  
 echo('<br>');
 
 
                              
 //Функция добавления данных в БД
  function getInsert($id_preceptor,$id_section)
  {$insert = mysql_query("INSERT INTO section_preceptor(id_preceptor,id_section) 
                            VALUES ('$id_preceptor','$id_section')");
    if(!$insert){return exit('Ошибка добавления данных в БД');}
     //Если данные добавились успешно
     echo "Данные успешно добавлены";
  }
  //Вызываем функцию только после нажатия кнопки "Добавить"
  if($_POST['add'])
    { 
    echo ("$id_preceptor $id_section<br> <br>");
 
    //Вызов функции getInsert()
   getInsert($_POST['spisok_prc'],$_POST['spisok_sct']);
}
?>
 
<html>
 
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1251">
<title>Mentors - ввод данных "Кто какие кружки ведет"</title>
</head>
<body bgcolor=#99CCC>
<br>
<form action="" method="post"><br>
<table>
<tr>
<input type=submit name="add" value="Добавить"/><!--&nbsp;-->
</tr></table></form>
 
</body>
</html>
Форма, с которой работаю.
Таблицы (нижние - из которых берутся данные, верхняя - в нее надо загрузить данные).
Миниатюры
Из БД в выпадающий список данные грузятся, а обратно нет (   Из БД в выпадающий список данные грузятся, а обратно нет (  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.11.2013, 18:13
Ответы с готовыми решениями:

Данные из БД в выпадающий список
Всем привет. Такой вопрос. Сразу прошу прощения, так как я мало смыслю в PHP, но знаю что это всего несколько строчек кода. Так вот у меня...

Выпадающий список, данные из таблицы
Как заполнить выпадающий список данными из таблиц? В одной таблице содержится численное значение прав пользователя( 1- пользователь, 2 -...

Выпадающий список + подтянуть данные
Здравствуйте пожалуйста помогите как в экзел 2007 создат выподающий лист,с именами ,чтобы при нажатии на имя в соседней клетке показывало...

4
33 / 36 / 2
Регистрация: 28.04.2010
Сообщений: 571
21.11.2013, 18:47
select'ы болтаются где-то за пределами формы.

С кавычками тоже что-то напутано:
Цитата Сообщение от serebr Посмотреть сообщение
echo ("<option value='.$id_preceptor.'>".$last_name_prc .' '.$first_name_prc.' '.$middle_name_prc."</option>");
Цитата Сообщение от serebr Посмотреть сообщение
echo ("<option value='.$id_section.'>".$name_sct."</option>");
Здесь попробуйте с двойными кавычками:
Цитата Сообщение от serebr Посмотреть сообщение
$insert = mysql_query("INSERT INTO section_preceptor(id_preceptor,id_sectio n)
* * * * * * * * * * * * * * VALUES ('$id_preceptor','$id_section')");
0
0 / 0 / 0
Регистрация: 21.11.2013
Сообщений: 3
21.11.2013, 19:02  [ТС]
Restel, да с кавычками вроде все нормально, по крайней мере в этой части кода все из уже заполненных таблиц нормально подгружается

Во втором echo, который вы подправили, вы просто заменили, чтобы вместо моих чистых id выводилось название, а не цифры, к тому же только одного окна. У меня практически тоже самое, только выводятся id, я потом это уберу, вставлено просто чтобы видеть что именно происходит.

Двойные кавычки не прошли.

Плюс ко всему, echo показывает, что не обращая внимания на выбранные пункты, выделяются строки с id - 001 из обоих окон.
Миниатюры
Из БД в выпадающий список данные грузятся, а обратно нет (  
0
33 / 36 / 2
Регистрация: 28.04.2010
Сообщений: 571
21.11.2013, 19:50
serebr, я ничего не правила, только цитировала Ваш код.
0
0 / 0 / 0
Регистрация: 21.11.2013
Сообщений: 3
21.11.2013, 20:29  [ТС]
Поняла, я думала вы подправили мне нижний Echo, а это вы цитировали второй )

Добавлено через 36 минут
Все, проблему решали.

Надо было вставить form внутрь <? ?>
Вот что вышло (вдруг кому пригодится):
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
<html>
 
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1251">
<title>Mentors - ввод данных "Кто какие кружки ведет"</title>
</head>
<body bgcolor=#99CCC>
 
<table><td>
<form method='post' action='index.php'>
<input type=submit name="return" value="На главную страницу"/>
</form>
</td><td>
<form method='post' action='admin_main.php'>
<input type=submit name="return" value="На предыдущую страницу"/>
</form>
</td>
</table>
<h1>Ввод данных в базу "Дети"</h1><!--Заголовок HTML-->
<br><b>Выберите какие кружки будет вести педагог</b><br><br><br>
 
 
<?php
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
  //Подключаемся к БД
  $host = "localhost";
  $name = "root";
  $password = "";
  $db = "children";
  @mysql_connect($host,$name,$password) or die(mysql_error());
  @mysql_select_db($db) or die(mysql_error());
 
  //Выборка данных из таблицы Кружководы (preceptors)
  $query_prc=mysql_query("SELECT * from preceptors  ORDER BY last_name_prc asc");
  $kolstr_prc=mysql_num_rows($query_prc);
echo('<form action="" method="post"><br> <table>
<tr><td>');
 
  //Создаем выпадающий список для Кружководов
echo ('<select name=spisok_prc maxlength=50 size=1>');
$i=0; 
while ($i < $kolstr_prc)
{  $row_prc=mysql_fetch_array($query_prc);
 
  $id_preceptor = $row_prc['id_preceptor'];
  $last_name_prc = $row_prc['last_name_prc'];
  $first_name_prc = $row_prc['first_name_prc'];
  $middle_name_prc = $row_prc['middle_name_prc'];
  
  echo ("<option value='.$id_preceptor.'>".$last_name_prc.' '.$first_name_prc.' '.$middle_name_prc."</option>");
  $i++;
  }
echo('</select></td><td>');  
  
//Выборка данных из таблицы Кружки (sections)
  $query_sct=mysql_query("SELECT * from sections ORDER BY name_sct asc");
  $kolstr_sct=mysql_num_rows($query_sct);
  echo('    '); 
   //Создаем выпадающий список для Кружков
echo ('<select name=spisok_sct maxlength=50 size=1>');
$j=0;
while ($j <$kolstr_sct)
{ $row_sct=mysql_fetch_array($query_sct);
 
  $id_section = $row_sct['id_section'];
  $name_sct = $row_sct['name_sct'];
  $profile_sct = $row_sct['profile_sct'];
  
  echo ("<option value='.$id_section.'>".$name_sct."</option>");
  $j++;
  }
 echo('</select>  
</td></tr>
<tr><td>
<input type=submit name="add" value="Добавить"/><!--&nbsp;-->
</td><td></td></tr></table></form> ');
 
                              
 //Функция добавления данных в БД
  function getInsert($spisok_prc,$spisok_sct)
  {$insert = mysql_query("INSERT INTO section_preceptor(id_preceptor,id_section) 
                            VALUES ('$spisok_prc','$spisok_sct')");
    if(!$insert){return exit('Ошибка добавления данных в БД');}
     //Если данные добавились успешно
     echo "Данные успешно добавлены";
  }
  //Вызываем функцию только после нажатия кнопки "Добавить"
  if($_POST['add'])
    { 
    echo ("$spisok_prc $spisok_sct<br> <br>");
 
    //Вызов функции getInsert()
   getInsert($_POST['spisok_prc'],$_POST['spisok_sct']);
}
?>
 
 
 
</body>
</html>

Тема закрыта.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.11.2013, 20:29
Помогаю со студенческими работами здесь

Как в выпадающий список вывести данные из БД?
У меня в контроллере создается два выпадающих списка: SelectList students = new SelectList(db.Students, &quot;Id&quot;,...

В IE, кастомный выпадающий список: не выпадает список, если не хватает места снизу
Только в IE. не работает кастомный выпадающий список, если недостаточно места снизу. Какие варианты решения есть?

jqGrid не грузятся данные
Попробывал поюзать jqGrid, но данные почему-то не грузятся вот страница на которой jqGrid &lt;!DOCTYPE HTML&gt; &lt;html&gt; ...

не грузятся данные в таблицу 2
В общем то уже пытался решить проблему(https://www.cyberforum.ru/php-beginners/thread1736033.html), но сейчас она более конкретизировалась,...

В DataGridView не грузятся данные, как исправить
При открытии формы с таблицами почему то не загружаются в DataGridView данные, вроде бы все правильно сделал. Работаю с Visual Studio...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: показать затраченные материалы за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В качестве. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru