Форум программистов, компьютерный форум, киберфорум
PHP: базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/18: Рейтинг темы: голосов - 18, средняя оценка - 4.89
4 / 4 / 2
Регистрация: 28.10.2010
Сообщений: 180

Запись чекбоксов в бд

18.03.2013, 13:18. Показов 3341. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Прошу помощи.
Нужно выбранные чекбоксы записать в бд.
Код
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
$value = $_POST["name_exc"]; value = $_POST["id"];         
            $select = mysql_query("SELECT * FROM excursions ORDER BY name_exc ASC") or die(mysql_error());
                    while ($assoc = mysql_fetch_assoc($select))
               
                           {
                         $name_exc = "".$assoc['name_exc']."";
                        "<ol>";
            if( $value != 0 )
                           echo "<li><input type='checkbox' name='$name_exc' checked value='1'>$name_exc</li>";
                                else
                           echo "<li><input type='checkbox' name='$name_exc' value='$id'>$name_exc </li>";
                               "</ol>"; 
              }
Обработчики
PHP
1
2
3
4
5
 $value=array();
 foreach($value as $check) {
 $result = mysql_query ("INSERT INTO `intourist`.`zakaz` (checkb) VALUES ('".$check."')");
   
    }
Знаю, что передаваться в value должно либо 1 либо 0, но не знаю как решить свою задачу.
Задача в следующем: Вывод из бд чекбоксов, выбор их пользователем(несколько/все/один) и последующая запись в бд с названием, которое выводится у чекбокса.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.03.2013, 13:18
Ответы с готовыми решениями:

Запись чекбоксов в бд
Доброго времени суток. Нужна ваша помощь. Имеется n-ое количество чекбоксов. При выборе одного или нескольких чекбоксов, их значения...

Обработка чекбоксов с записью в БД
Уважаемые программисты, прошу помощи! Тема думаю достаточно простая для вас опытных... я только учусь, перелапатила уже кучу информацию, но...

Перенести значения чекбоксов в базу
Всем привет. Нужно сделать добавление многих жанров в таблицу связи, выбор которых производится через checkbox. Как считать все выбранные...

8
0 / 0 / 0
Регистрация: 18.03.2013
Сообщений: 12
18.03.2013, 16:06
Ну и записывай в БД булиевое значение чекбокса и переменную с его названием.
Потом получаешь все строки из таблицы и подставляй через while их в нужные параметры. Или тебе готовый код нужен?
0
4 / 4 / 2
Регистрация: 28.10.2010
Сообщений: 180
18.03.2013, 21:11  [ТС]
Цитата Сообщение от r0ocket Посмотреть сообщение
Ну и записывай в БД булиевое значение чекбокса и переменную с его названием.
Потом получаешь все строки из таблицы и подставляй через while их в нужные параметры. Или тебе готовый код нужен?
я привел код, думал, скажут что неправильно, если не сложно дай код

Добавлено через 1 час 54 минуты
Ребят хотя бы скажите примерно как делать? а то уже давно мучаюсь с этой темой, все никак не получается
0
 Аватар для koza4ok
632 / 440 / 67
Регистрация: 19.09.2012
Сообщений: 1,632
19.03.2013, 14:04
index.php
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
<form action="1.php" action="1.php">
<input type="checkbox" value="one" name="check_1" />
<input type="checkbox" value="two" name="check_2"  />
<input type="checkbox" value="five" name="check_4" />
 
 
<input type="checkbox" value="four" name="Dcheck_3" />
<input type="checkbox" value="five" name="checCk_4" />
<input type="checkbox" value="five" name="cGeck_4" />
 
<input type="submit" name="submit" value="submit"  />
</form>
1.php

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
mysql_connect("localhost", "root", "");
mysql_select_db('olala') or die(mysql_error());
 
    if(isset($_GET['submit'])){
        
        $arr=$_GET;
        
foreach ($arr as $key => $value)
{
    $reg="/^check/";//отбираю нужные элементы 
    if( preg_match ($reg,$key ))
    {
        //$new_mass[]=$arr[$key];
        //print_r($new_mass);
        echo $arr[$key];
        $sql_1="INSERT INTO `table_one` (`name`) VALUES('$arr[$key]')";
        mysql_query($sql_1) or die(mysql_error());
 
    }
}
    
    }
1
4 / 4 / 2
Регистрация: 28.10.2010
Сообщений: 180
19.03.2013, 17:40  [ТС]
Цитата Сообщение от koza4ok Посмотреть сообщение
index.php
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
<form action="1.php" action="1.php">
<input type="checkbox" value="one" name="check_1" />
<input type="checkbox" value="two" name="check_2"  />
<input type="checkbox" value="five" name="check_4" />
 
 
<input type="checkbox" value="four" name="Dcheck_3" />
<input type="checkbox" value="five" name="checCk_4" />
<input type="checkbox" value="five" name="cGeck_4" />
 
<input type="submit" name="submit" value="submit"  />
</form>
1.php

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
mysql_connect("localhost", "root", "");
mysql_select_db('olala') or die(mysql_error());
 
    if(isset($_GET['submit'])){
        
        $arr=$_GET;
        
foreach ($arr as $key => $value)
{
    $reg="/^check/";//отбираю нужные элементы 
    if( preg_match ($reg,$key ))
    {
        //$new_mass[]=$arr[$key];
        //print_r($new_mass);
        echo $arr[$key];
        $sql_1="INSERT INTO `table_one` (`name`) VALUES('$arr[$key]')";
        mysql_query($sql_1) or die(mysql_error());
 
    }
}
    
    }
Делал как вы указали, но запись так и не производится в таблицу.

Вот такой получается у меня код:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
if($_POST['submit']){
   $element_2_1 = $_POST['element_2_1'];//имя
   $element_2_2 = $_POST['element_2_2'];//фамилия
   $data =  $_POST['element_1_3']."-". $_POST['element_1_2']."-". $_POST['element_1_1'];
   $telefone = $_POST['element_3_1']."-". $_POST['element_3_2']."-". $_POST['element_3_3'];
  $update = mysql_query("INSERT INTO `intourist`.`zakaz`  SET name = '$element_2_1', firstname = '$element_2_2', date ='$data', telefone = '$telefone'") or die (mysql_error());
 if($update){print "Данные сохранены успешно";}
 
    $arr=$_GET;
foreach ($arr as $key => $value)
{
     $reg="/^check/";//отбираю нужные элементы 
    if( preg_match ($reg,$key ))
    {
        //$new_mass[]=$arr[$key];
        //print_r($new_mass);
        echo $arr[$key];
        $sql_1="INSERT INTO `intourist`.`zakaz` (`ckeckb`) VALUES('$arr[$key]')";
        mysql_query($sql_1) or die(mysql_error());
 
    }
}
}
0
 Аватар для koza4ok
632 / 440 / 67
Регистрация: 19.09.2012
Сообщений: 1,632
19.03.2013, 17:49
я ведь протестил перед тем и у меня получилось
есть ошибки при работе с БД?проверте вашу таблицу.Какие данные туда входят.
0
4 / 4 / 2
Регистрация: 28.10.2010
Сообщений: 180
19.03.2013, 20:44  [ТС]
Цитата Сообщение от koza4ok Посмотреть сообщение
я ведь протестил перед тем и у меня получилось
есть ошибки при работе с БД?проверте вашу таблицу.Какие данные туда входят.
Есть две таблицы, из одной таблицы чекбоксы берутся(выводятся из таблицы, получается чем болье записей, тем больше чекбоксов), выбираются пользователем и записываются в другую таблицу.
Ошибок нет,но нет записи чекбоксов в таблице, другие заносятся поля.
Поле для записи чекбоксов называется checkb и имеет тип text. Код выше с вашим.

Добавлено через 15 минут
Цитата Сообщение от NONEMOX Посмотреть сообщение
Есть две таблицы, из одной таблицы чекбоксы берутся(выводятся из таблицы, получается чем болье записей, тем больше чекбоксов), выбираются пользователем и записываются в другую таблицу.
Ошибок нет,но нет записи чекбоксов в таблице, другие заносятся поля.
Поле для записи чекбоксов называется checkb и имеет тип text. Код выше с вашим.
Код самой страницы:
Кликните здесь для просмотра всего текста
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
119
120
121
122
123
124
125
126
127
128
129
130
<?php
define('INCLUDE_CHECK',true);
require 'connect.php';
require 'functions.php';
 
session_name('User');
// Запуск сессии
 
session_set_cookie_params(2*7*24*60*60);
// Устанавливаем время жизни куки 2 недели
 
session_start();
?>
<!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>Бронирование экскурсии</title>
<link rel="stylesheet" type="text/css" href="../css/view.css" media="all">
<script type="text/javascript" src="../js/view.js"></script>
<script type="text/javascript" src="../js/calendar.js"></script>
</head>
<body id="main_body" >
    
    <img id="top" src="../images/top.png" alt="">
    <div id="form_container">
    
            <form method="post" action="obr_zakaza.php">
                    <div class="form_description">
            <center><h2>Бронирование экскурсии</h2></center>
            <center><a href="index.php">Главная</a> <span>&nbsp;</span> <a href="ekskursii.php">Экскурсии</a></center>
            <p></p>
        </div>                      
            <ul >
<?      $id = $_SESSION['id'];
 //Делаем полную выборку из бд
  $select = mysql_query("SELECT * FROM users WHERE id = '$id'") or die(mysql_error());
  $assoc = mysql_fetch_assoc($select);?>
                    <li id="li_2" >
        <label class="description" for="element_2">Фамилия и Имя </label>
        <span>
            <input id="element_2_1" name= "element_2_1" class="element text" maxlength="255" size="8" value="<?=$assoc['name'];?>"/>
            <label>Фамилия</label>
        </span>
        <span>
            <input id="element_2_2" name= "element_2_2" class="element text" maxlength="255" size="14" value="<?=$assoc['firstname'];?>"/>
            <label>Имя</label>
        </span> 
        </li>       <li id="li_4" >
        <label class="description" for="element_4">Выбрать памятники для экскурсий </label>
        <span>
        <?
                   $value = $_POST["name_exc"];
$value = $_POST["id"];         
            $select = mysql_query("SELECT * FROM excursions ORDER BY name_exc ASC") or die(mysql_error());
                    while ($assoc = mysql_fetch_assoc($select))
               
                           {
                         $name_exc = "".$assoc['name_exc']."";
                        "<ol>";
            if( $value != 0 )
                           echo "<li><input type='checkbox' name='$name_exc' checked value='1'>$name_exc</li>";
                                else
                           echo "<li><input type='checkbox' name='$name_exc' value='$id'>$name_exc </li>";
            //echo "<li><input type=checkbox name=checkboxes[$name_exc] value=$name_exc]>$name_exc</li>";
                          "</ol>"; 
              }
              
                ?>
        </span> 
        </li>       <li id="li_1" >
        <label class="description" for="element_1">Дата </label>
        <span>
            <input id="element_1_1" name="element_1_1" class="element text" size="2" maxlength="2" value="" type="text"> /
            <label for="element_1_1">ДД</label>
        </span>
        <span>
            <input id="element_1_2" name="element_1_2" class="element text" size="2" maxlength="2" value="" type="text"> /
            <label for="element_1_2">ММ</label>
        </span>
        <span>
            <input id="element_1_3" name="element_1_3" class="element text" size="4" maxlength="4" value="" type="text">
            <label for="element_1_3">ГГГГ</label>
        </span>
    
        <span id="calendar_1">
            <img id="cal_img_1" class="datepicker" src="../images/calendar.gif" alt="Pick a date."> 
        </span>
        <script type="text/javascript">
            Calendar.setup({
            inputField   : "element_1_3",
            baseField    : "element_1",
            displayArea  : "calendar_1",
            button       : "cal_img_1",
            ifFormat     : "%B %e, %Y",
            onSelect     : selectEuropeDate
            });
        </script>
         
        </li>       <li id="li_3" >
        <label class="description" for="element_3">Телефон для контакта </label>
        <span>
            <input id="element_3_1" name="element_3_1" class="element text" size="3" maxlength="3" value="" type="text"> -
            <label for="element_3_1">(###)</label>
        </span>
        <span>
            <input id="element_3_2" name="element_3_2" class="element text" size="3" maxlength="3" value="" type="text"> -
            <label for="element_3_2">###</label>
        </span>
        <span>
            <input id="element_3_3" name="element_3_3" class="element text" size="4" maxlength="4" value="" type="text">
            <label for="element_3_3">####</label>
        </span>
         
        </li>
            
                    <li class="buttons">
             <input type="submit" name="submit" value="Отправить" />
        </li>
            </ul>
        </form> 
        
        
        <div id="footer">
            Разработал <a>-</a>
        </div>
    </div>
    <img id="bottom" src="../images/bottom.png" alt="">
    </body>
</html>

КОд обработчика:
Кликните здесь для просмотра всего текста
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
<?
define('INCLUDE_CHECK',true);
require 'connect.php';
require 'functions.php';
session_name('User');
// Запуск сессии
 
session_set_cookie_params(2*7*24*60*60);
// Устанавливаем время жизни куки 2 недели
 
session_start();
?>
<?php
if($_POST['submit']){
   $element_2_1 = $_POST['element_2_1'];//имя
   $element_2_2 = $_POST['element_2_2'];//фамилия
   $data =  $_POST['element_1_3']."-". $_POST['element_1_2']."-". $_POST['element_1_1'];
   $telefone = $_POST['element_3_1']."-". $_POST['element_3_2']."-". $_POST['element_3_3'];
  $update = mysql_query("INSERT INTO `intourist`.`zakaz`  SET name = '$element_2_1', firstname = '$element_2_2', date ='$data', telefone = '$telefone'") or die (mysql_error());
 if($update){print "Данные сохранены успешно";}
 
    $arr=$_GET;
foreach ($arr as $key => $value)
{
     $reg="/^check/";//отбираю нужные элементы 
    if( preg_match ($reg,$key ))
    {
        //$new_mass[]=$arr[$key];
        //print_r($new_mass);
        echo $arr[$key];
        $sql_1="INSERT INTO `intourist`.`zakaz` (`ckeckb`) VALUES('$arr[$key]')";
        mysql_query($sql_1) or die(mysql_error());
 
    }
}
}
 //Обработка чекбоксов//
 //$value=array();
 //foreach($value as $check) {
 //$result = mysql_query ("INSERT INTO `intourist`.`zakaz` (checkb) VALUES ('".$check."')");
   
    //}
    
?>
<script language="JavaScript"> 
  window.location.href = "index.php"
</script>
0
4 / 4 / 2
Регистрация: 28.10.2010
Сообщений: 180
20.03.2013, 19:58  [ТС]
Нет ни как вариантов, чтобы выводились динамически чекбоксы из одной таблицы, и выбранные записывались в другую таблицу?
0
4 / 4 / 2
Регистрация: 28.10.2010
Сообщений: 180
21.03.2013, 20:40  [ТС]
неужели ни кто помочь не может? код выше не походит под нужды. Помогите, уже даже не знаю, что делать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.03.2013, 20:40
Помогаю со студенческими работами здесь

5 чекбоксов из 10
Добрый день! У меня есть 10 чекбоксов, как сделать так чтобы можно было выбрать только 5 штук и если будет не равно 5 то будет выводиться...

15 000 чекбоксов
В крадце: на страничку подгружается 15к чекбоксов. &lt;div class=&quot;ddlSicksStyle&quot;&gt; &lt;asp:CheckBoxList ID=&quot;ddlSicks&quot;...

Проверка чекбоксов
Я начинающая в javascript'е, поэтому будьте лояльны к моему глупому вопросу :) Есть код: &lt;input name=&quot;с&quot;...

Обработка чекбоксов JS
Здравствуйте, уважаемые программисты. Подскажите пожалуйста немного по такому вопросу - есть два форма, в ней два input chekbox (две группы...

Стили чекбоксов
Можно ли средствами html изменить их вид? В частности размер или задать другие стили дефолтные? В опере выглядят как то убого, можно ли...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru