Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP: базы данных
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.84/25: Рейтинг темы: голосов - 25, средняя оценка - 4.84
tusha-kutusha
5 / 5 / 0
Регистрация: 14.04.2012
Сообщений: 25
#1

Выпадающий список, добавление данных в таблицу

16.04.2012, 11:37. Просмотров 4557. Ответов 26
Метки нет (Все метки)

Доброго времени суток! Имеется форма для заполнения

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
<html>
<head>
<title>Подать заявку</title>
 
<?
include("connect.php");
?>
</head>
 
<body>
 
<div id="wrapper">
    
<div id="content">
 
<b>Введите даные для заявки</b><br>
 
  <form name="name" method="post" action="ob.php">
    <p>
      <label >Отдел<br>
      <input type="text" name="otdel" >
 
        </label>
    </p>
    
    <p>
      <label>Фамилия <br>
      <input type="text" name="family" >
      </label>
    </p>
 
    <p>
      <label>Кабинет <br>
      <input type="text" name="kabinet" >
          </label>
    </p>
  
    <p>
      <label>Тип проблемы<br>
      <input type="text" name="type_problem" >
      </label>
    </p>
 
    <p>
      <label>Дата<br>
      <input name="data" type="text"  value="2012-03-09">
      </label>
    </p>
   
    <p>
      <label>Описание<br>
      <textarea name="opisanie"  cols="50" rows="3"></textarea>
      </label>
    </p>
    
    <p>
    <br>
      <label>
      <input type="submit" name="button"  value="Отправить заявку">
      </label></br>
    </p>
  </form>
    </div>
</div>
 
</body>
</html>
Обработчик формы
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?
include("connect.php");
$otdel = $_POST['otdel'];
$family = $_POST['family'];
$kabinet = $_POST['kabinet']; 
$type_problem = $_POST['type_problem'];
$data = $_POST['data'];
$opisanie = $_POST['opisanie']; 
 
 # Формируем запрос на добавление записей в таблицу 
 $result = mysql_query ("insert into zayavki
(otdel,family,kabinet,type_problem,data,opisanie) values('$otdel','$family','$kabinet','$type_problem','$data','$opisanie')");
//Если запрос пройдет успешно то в переменную result вернется true
if($result == 'true') 
{echo "Ваши данные успешно добавлены";}
else{echo "Ваши данные не добавлены";}
 
?>
нужно сделать так ,что бы можно было выбрать отдел из выпадающего списка
как на скриншоте,и что бы выбранный отдел заносился в базу данных


нашел код списка в сети

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?
include("connect.php");
 
// Performing SQL query
$query = 'SELECT nazvanie FROM otdel';
$result = mysql_query($query) or die('Query failed: ' . mysql_error());
 
// Printing results in HTML
echo "<select>";
while ($line = mysql_fetch_array($result, MYSQL_ASSOC)) {
    echo '<option value="'.$line['nazvanie'].'">'.$line['nazvanie'];
}
echo "</select>\n";
 
 
?>
Как вписать этот код в форму чтобы данные записывались в таблицу?
2
Миниатюры
Выпадающий список, добавление данных в таблицу   Выпадающий список, добавление данных в таблицу  
Изображения
 
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.04.2012, 11:37
Ответы с готовыми решениями:

Выпадающий список - запись данных в БД
Добрый вечер. Есть список: &lt;select name=&quot;age&quot;&gt; &lt;option...

Выпадающий список с информацией из базы данных
Здравствуйте! Я пишу форму для обновления данных в таблице врачей. Нужно...

Пример вывода данных из БД в выпадающий список
База region таблица name не могу вывести выпадющий список $query = &quot;select *...

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

Выпадающий список из базы данных (одинаковые значения)
Всем привет, начинаю только осваивать это чудесное ремесло И ни как не могу...

26
allukard
155 / 155 / 50
Регистрация: 08.11.2010
Сообщений: 1,358
16.04.2012, 13:43 #2
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$result6 = mysql_query("SELECT `nazvanie` FROM `otdel`");
if(mysql_num_rows($result6)<=0)
{
        echo ("записей не обнаружено!");
        }else{
                echo "<form action='select_design.php' method='post'>";
                echo ("Темы: <select type='text' name='design' class=\"StyleSelectBox\">");
                while ($myrow6 = mysql_fetch_array($result6)) 
                {
                        echo ("<option name='design' value=\"$myrow6[design]\">$myrow6[design]</option>\n");
                }
                echo ("</select>");        
                echo "<p><input type=\"submit\" value=\"Изменить\"></p>";
                echo "</form>";  
}
2
tusha-kutusha
5 / 5 / 0
Регистрация: 14.04.2012
Сообщений: 25
16.04.2012, 14:08  [ТС] #3
не показывает название отделов пустой список получается
1
Изображения
 
allukard
155 / 155 / 50
Регистрация: 08.11.2010
Сообщений: 1,358
16.04.2012, 14:38 #4
PHP
1
echo ("<option name='design' value=\"$myrow6[nazvanie]\">$myrow6[nazvanie]</option>\n");
замените строку!
2
tusha-kutusha
5 / 5 / 0
Регистрация: 14.04.2012
Сообщений: 25
16.04.2012, 15:31  [ТС] #5
строку заменил,список появился ,после нажатия пишет данные записаны ,но в бд пустые поля
1
Миниатюры
Выпадающий список, добавление данных в таблицу  
allukard
155 / 155 / 50
Регистрация: 08.11.2010
Сообщений: 1,358
16.04.2012, 19:18 #6
покажи Обработчик формы
1
tusha-kutusha
5 / 5 / 0
Регистрация: 14.04.2012
Сообщений: 25
17.04.2012, 10:29  [ТС] #7
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?
include("connect.php");
 
 
$otdel = $_POST['otdel'];
$family = $_POST['family'];
$kabinet = $_POST['kabinet']; 
$type_problem = $_POST['type_problem'];
$data = $_POST['data'];
$opisanie = $_POST['opisanie']; 
 
 
 
 # Формируем запрос на добавление записей в таблицу 
 $result = mysql_query ("insert into zayavki
(otdel,family,kabinet,type_problem,data,opisanie) values('$otdel','$family','$kabinet','$type_problem','$data','$opisanie')");
//Если запрос пройдет успешно то в переменную result вернется true
if($result == 'true') 
{echo "Ваши данные успешно добавлены";}
else{echo "Ваши данные не добавлены";}
 
 
?>
1
allukard
155 / 155 / 50
Регистрация: 08.11.2010
Сообщений: 1,358
17.04.2012, 11:59 #8
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
<?php
$result6 = mysql_query("SELECT `nazvanie` FROM `otdel`");
if(mysql_num_rows($result6)<=0)
{
        echo ("записей не обнаружено!");
        }else{
                echo ("Темы: <select type='text' name='nazvanie' class=\"StyleSelectBox\">");
                while ($myrow6 = mysql_fetch_array($result6)) 
                {
                        echo ("<option name='nazvanie' value=\"$myrow6[nazvanie]\">$myrow6[nazvanie]</option>\n");
                }
                echo ("</select>");        
}
?>
 
 
<?
include("connect.php");
 
$otdel = $_POST['otdel'];
$family = $_POST['family'];
$kabinet = $_POST['kabinet']; 
$type_problem = $_POST['type_problem'];
$data = $_POST['data'];
$opisanie = $_POST['opisanie']; 
$nazvanie = $_POST['nazvanie']; 
 
 
 # Формируем запрос на добавление записей в таблицу 
 $result = mysql_query ("insert into zayavki
(otdel,family,kabinet,type_problem,data,opisanie,nazvanie) values('$otdel','$family','$kabinet','$type_problem','$data','$opisanie','$nazvanie')");
//Если запрос пройдет успешно то в переменную result вернется true
if($result == 'true') 
{echo "Ваши данные успешно добавлены";}
else{echo "Ваши данные не добавлены";}
?>
3
Елена77
0 / 0 / 1
Регистрация: 27.10.2012
Сообщений: 93
19.10.2016, 13:32 #9
Скажите, пожалуйста, таблицы 'otdel' и 'zayavki' связаны между собой?

Выпадающий список, добавление данных в таблицу


Я не вижу, что они связаны. Я поняла, если бы таблица 'otdel' содержала уникальные значения отделов, которые есть в поле 'otdel' таблицы 'zayavki' и поля бы назывались одинаково, например, name_otdel.

Судя по всему, здесь связь не нужна, правильно?
0
Para bellum
Эксперт PHP
4034 / 3008 / 959
Регистрация: 06.01.2011
Сообщений: 8,830
19.10.2016, 13:36 #10
Цитата Сообщение от Елена77 Посмотреть сообщение
Судя по всему, здесь связь не нужна, правильно?
Связь здесь как раз желательна, чтобы не было беспорядочных добавлений в несуществующие разделы.
Но связи на данный момент нет.
1
Елена77
0 / 0 / 1
Регистрация: 27.10.2012
Сообщений: 93
19.10.2016, 13:56 #11
Спасибо! И еще вопрос: скажите, пожалуйста, в этом примере формы обращаются к одному и тому же обработчику 'ob.php' ? Или здесь 2 обработчика?

Добавлено через 13 минут
Обработчик один, поняла
0
Para bellum
Эксперт PHP
4034 / 3008 / 959
Регистрация: 06.01.2011
Сообщений: 8,830
19.10.2016, 13:57 #12
Цитата Сообщение от Елена77 Посмотреть сообщение
в этом примере формы обращаются к одному и тому же обработчику 'ob.php' ? Или здесь 2 обработчика?
Какие именно формы? Та, что в первом сообщении этой темы обращается к "ob.php", а вернее, обращается не форма, а обозреватель, вследствие отправки формы.
Вторую вижу во втором сообщении -- там, неясно с чего, указано "select_design.php".

Но судя по всему -- обработчик для форм из 1 и 2 сообщения один.
1
Елена77
0 / 0 / 1
Регистрация: 27.10.2012
Сообщений: 93
19.10.2016, 15:05 #13
Скажите, пожалуйста, а как мне теперь сделать, чтобы для каждой записи в таблице уже стоял свой факультет, который есть в базе данных? А потом я бы меняла значение (добавлю кнопку 'изменить').

PHP
1
2
3
4
5
6
7
8
9
10
11
<td>
 
<? $result = mysql_query("SELECT `name_faculty` FROM `faculty`");
if(mysql_num_rows($result)<=0)
{echo ("записей не обнаружено!");}
else{echo ("<select type='text' name='name_faculty'>");
while ($myrow = mysql_fetch_array($result)) 
{echo ("<option name='name_faculty' value=\"$myrow[name_faculty]\">$myrow[name_faculty]</option>\n");}
echo ("</select>");} ?>
 
</td>
Выпадающий список, добавление данных в таблицу




Выпадающий список, добавление данных в таблицу

Выпадающий список, добавление данных в таблицу
0
Елена77
0 / 0 / 1
Регистрация: 27.10.2012
Сообщений: 93
19.10.2016, 15:15 #14
Получается, нужно добавить свойство 'selected', равное...
0
Para bellum
Эксперт PHP
4034 / 3008 / 959
Регистрация: 06.01.2011
Сообщений: 8,830
19.10.2016, 15:23 #15
Весь скрипт покажите. С чем сравнивать надо?
1
Елена77
0 / 0 / 1
Регистрация: 27.10.2012
Сообщений: 93
19.10.2016, 15:32 #16
Мне нужно не сравнивать, а чтобы значение в списке равнялось значению в базе данных


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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
    
    <h1>Header</h1>
    
    <? if(isset($text)): ?>
    
<table border=1 align="center"> 
 
<!-- шапка таблицы-->
<tr>    
 
<td>
№
</td>
 
 
<td>
id группы
</td>
 
<td>
Имя группы
</td>
 
<td>
id курса
</td>
 
<td>
Название факультета
</td>
 
<td>
id факультета
</td>
 
 
</tr> 
 
  
<form name="name" method="post" action="change.php">
 
    <? $number = 1  ?>
    <? foreach($text as $item): ?>
    
    <!--<h2>
    <a href="index.php?id=<?=$item['id'];?>"><?=$item['title']; ?></a>
    </h2>-->   
        
<tr>
 
<td>
<?=$number;
$number++;?>
</td>
 
<td>
<?=$item['id_group'];?>
</td>
 
<td>
<?=$item['name_group'];?>
</td>
 
 
 
 
<td>
 
<? $result = mysql_query("SELECT `id_course` FROM `course`");
if(mysql_num_rows($result)<=0)
{echo ("записей не обнаружено!");}
 
else{echo ("<select selected = <?$result['id_course']  ?>   type='text' name='id_course'>");
while ($myrow = mysql_fetch_array($result)) 
{echo ("<option name='id_course' value=\"$myrow[id_course]\">$myrow[id_course]</option>\n");}
echo ("</select>");} ?>
 
</td>
 
 
 
 
 
<td>
 
<? $result = mysql_query("SELECT `name_faculty` FROM `faculty`");
if(mysql_num_rows($result)<=0)
{echo ("записей не обнаружено!");}
else{echo ("<select type='text' name='name_faculty'>");
while ($myrow = mysql_fetch_array($result)) 
{echo ("<option name='name_faculty' value=\"$myrow[name_faculty]\">$myrow[name_faculty]</option>\n");}
echo ("</select>");} ?>
 
</td>
 
 
 
 
<td>
<?=$item['id_faculty'];?>
</td>
 
</tr>
        
    <? endforeach; ?>
</table>
    <? endif; ?>
        
 
<h6>footer</h6>
</body>
</html>
0
Para bellum
Эксперт PHP
4034 / 3008 / 959
Регистрация: 06.01.2011
Сообщений: 8,830
19.10.2016, 15:44 #17
Цитата Сообщение от Елена77 Посмотреть сообщение
Мне нужно не сравнивать, а чтобы значение в списке равнялось значению в базе данных
Мне лучше знать, что Вам надо.
Вот:
PHPHTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<td>
<?php $result = mysql_query("SELECT `name_faculty` FROM `faculty`");
 
<?php if(mysql_num_rows($result)):?>
<select type="text" name="name_faculty">
    <?php while($myrow = mysql_fetch_array($result)):?>
    <?php $attribute = $myrow['id_faculty'] == $item['id_faculty'] ? 'selected' : ''?>
    <option name="name_faculty" value="<?=$myrow['name_faculty']?>" <?=$attribute?>><?=$myrow['name_faculty']?></option>
    <?php endwhile?>
</select>
<?php else: ?>
Записей не обнаружено.
<?php endif?>
</td>
1
Елена77
0 / 0 / 1
Регистрация: 27.10.2012
Сообщений: 93
19.10.2016, 16:34 #18
Ошибку выдает...

Выпадающий список, добавление данных в таблицу
0
Para bellum
Эксперт PHP
4034 / 3008 / 959
Регистрация: 06.01.2011
Сообщений: 8,830
19.10.2016, 16:46 #19
Ошибка-то какая? Все эти подчёркивания в IDE к делу не от носятся. У Вас просто атрибуты неправильные в тегах, а я не глядя скопировал, сфокусировавшись на другом.
PHP как отрабатывает, правильно?
PHPHTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<td>
<?php $result = mysql_query("SELECT `name_faculty` FROM `faculty`"); ?>
 
<?php if(mysql_num_rows($result)):?>
<select name="name_faculty">
    <?php while($myrow = mysql_fetch_array($result)):?>
    <?php $attribute = $myrow['id_faculty'] == $item['id_faculty'] ? 'selected' : ''?>
    <option value="<?=$myrow['name_faculty']?>" <?=$attribute?>><?=$myrow['name_faculty']?></option>
    <?php endwhile?>
</select>
<?php else: ?>
Записей не обнаружено.
<?php endif?>
</td>
Блин, ещё и тег PHP закрыть забыл.
1
fanatikus
1077 / 1074 / 504
Регистрация: 17.11.2012
Сообщений: 4,760
19.10.2016, 16:51 #20
у option, нет атрибута name. name прописывается у select
это я о скрине
1
19.10.2016, 16:51
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.10.2016, 16:51

Добавление данных в таблицу
есть сайт сделанный с помощью joomla. там зарегистрированно несколько...

Добавление данных в таблицу sql
Здравствуйте, подскажите пожалуйста в чем я ошибся &lt;body&gt; &lt;?php ...

Добавление данных в связанную таблицу
Есть две таблицы, связь одна ко многим. В одной находятся данные накладных...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru