powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [php>mysql] Pаписать в таблицу через галочки.
33 сообщений из 33, показаны все 2 страниц
[php>mysql] Pаписать в таблицу через галочки.
    #38600308
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всё таки тут больше php. E меня плохо получается объяснить что мне нужно, поэтому для облегчения и ускорения решил в картинке показать.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600319
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какая-то ерунда получается с class_id. Походу, туда попало название класса, а не его идентификатор.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600326
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleКакая-то ерунда получается с class_id. Походу, туда попало название класса, а не его идентификатор.
почему ерунда, вроде нет, я каждый раз сам пишу какая пара(класс) , если про _id то просто раньше по идентификаторам было как в student_id, только я его потом переделал, чтобы самому вбивать, а название столбца осталось
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600328
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ильшат190раньше по идентификаторам было как в student_id, только я его потом переделал, чтобы самому вбиватьТогда это уже class_name получается. Заодно и бардак получите (одно только "каб. 206" можно написать минимум пятью способами) и сложности при выборке.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600340
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,
Тогда это уже class_name
получается. Заодно и бардак
получите (одно только "каб. 206"
можно написать минимум пятью
способами) и сложности при
выборке.
извините, я Вас не понимаю, видимо знаний не хватает, не могли написать что имеется ввиду под class_name и какая разница если class_id все равно название столбца, или я ошибаюсь, и почему бардак говорите, и там минимум пятью способами. Не могли дополнить.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600342
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не могли бы, если время позволит)
Почему 5 это видимо по числу студентов как понимаю, тогда понимаю дальше возможно, Вы наверно хотели сказать что одинаковая "пара" будет для нескольких студентов, если это, то это так и задумано.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600348
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ильшат190,

Вот смотрите, сами по себе кабинеты/офисы/аудитории в здании более-менее фиксированы. По крайней мере, в своем географическом расположении. Однако, называть их можно по-разному. Одно и то же помещение может называться и "215" (допустим, табличка такая на дверях) и "Актовый зал". Следуя Вашей логике это будут два разных помещения (или больше, если ошибок понаделают в текстовом варианте), а по факту - одно.

Пять вариантов никак не соотносится с числом студентов :-)
Извольте:

каб. 206

Каб. 206

каб 206

каб206

каб.206

Кабинет 206

Аудиторя 206

Список вариантов можете продолжить самостоятельно. Ну а потом попробуйте сделать группировку по помещениям для выдачи списка дежурных на ближайшую неделю.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600351
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,

спасибо за подробнейшее описание, это все так конечно согласен, только вот не понимаю как это относится к изначальной задаче, там это строка class_id стоит только чтобы знать где человек дежурил и подсказать если что, и больше она нигде, ни в каких категориях, в сложных обработках не участвует и врядли будет, так что этот столбец поидее вообще можно убрать если надо, но мне она никак не мешает.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600353
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В данный момент, я добавляю студентов при помощи полей ввода и выбора, прикрепил картинку. Вроде как нормально двух дежурных можно добавлять спокойно и довольно быстро, но если 10 и больше уже долго получается, поэтому я решил к системе добавления через галочки перейти. Но незнаю как его реализовать, как то пробовал через циклы, у меня не получилось, и забросил эту тему. Но сейчас понимаю что это нужно.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600363
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да там не сложно. Даете "галочке" name="student_id[]", и в цикле по полученному массиву $_POST['student_id'] формируете запрос INSERT.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600366
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleДа там не сложно. Даете "галочке" name="student_id[]", и в цикле по полученному массиву $_POST['student_id'] формируете запрос INSERT.
Да, вот, я что то подобное хотел услышать. А почему раньше про class_id начали говорить.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600367
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleДа там не сложно. Даете "галочке" name="student_id[]", и в цикле по полученному массиву $_POST['student_id'] формируете запрос INSERT.

Спасибо, завтра попробую поделать, напишу обязательно.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600842
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а если без цикла, как то так можно ?

Собираем инфу с checkerbox , и в массив, далее:
$ids = implode(',', $_POST['ids']);
делаем вставку:
insert table SET field=value WHERE
id IN ($ids)
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38600957
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ильшат190,

Это в какой такой СУБД в синтаксисе INSERT присутствует IN ? ;-)

Напишите запрос, который хотите выполнить. По сути, это строка. А потом смотрите, можно эту строку собрать без цикла или нет. Скорее всего, можно.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601183
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: php
1.
2.
$ids = '('.implode('),(', $_POST['ids']).')';
INSERT INTO tbl_name (field) VALUES $ids;


а если так, не прокатит?)
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601193
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SharuPoNemnoguне прокатит?)Там же еще кабинет и время надо втыкать, судя по картинкам.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601367
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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 (empty($_POST['student_id[]']))
{
echo "1";
echo $_POST['student_id'];
}
else
{
echo "0";
};

$sqlu = "SELECT 
s.id, 
s.name AS `student_name` ,s.released,
(SELECT date_duty FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS date_duty,
(SELECT student_id FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS student_id,
(SELECT class_id FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS class_id,
(SELECT id FROM student_duty WHERE student_id = s.id  ORDER BY date_duty DESC LIMIT 1) AS id
FROM `students`  AS s  where released = 'no'   ORDER BY date_duty asc,name asc
";
$resultDutygu = mysql_query($sqlu);
while ($rowgu = mysql_fetch_assoc($resultDutygu)) { 
echo "<tr><td><input type='checkbox' name='student_id[]' value=''>".$rowgu['student_name']."</br></td></tr>";
};




Проверка на наличие post всегда почему то 1 пишет, вывод этого post - пусто.
Правильно ли сделал, может неправильно, из-за этого, поправьте пожалуйста
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601368
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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 (empty($_POST['student_id[]']))
{
echo "1";
echo $_POST['student_id'];
}
else
{
echo "0";
};

$sqlu = "SELECT 
s.id, 
s.name AS `student_name` ,s.released,
(SELECT date_duty FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS date_duty,
(SELECT student_id FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS student_id,
(SELECT class_id FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS class_id,
(SELECT id FROM student_duty WHERE student_id = s.id  ORDER BY date_duty DESC LIMIT 1) AS id
FROM `students`  AS s  where released = 'no'   ORDER BY date_duty asc,name asc
";
$resultDutygu = mysql_query($sqlu);
while ($rowgu = mysql_fetch_assoc($resultDutygu)) { 
echo "<tr><td><input type='checkbox' name='student_id[]' value=''>".$rowgu['student_name']."</br></td></tr>";
};




Проверка на наличие post всегда почему то 1 пишет, вывод этого post - пусто.
Правильно ли сделал, может неправильно, из-за этого, поправьте пожалуйста
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601369
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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 (empty($_POST['student_id[]']))
{
echo "1";
echo $_POST['student_id'];
}
else
{
echo "0";
};

$sqlu = "SELECT 
s.id, 
s.name AS `student_name` ,s.released,
(SELECT date_duty FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS date_duty,
(SELECT student_id FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS student_id,
(SELECT class_id FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS class_id,
(SELECT id FROM student_duty WHERE student_id = s.id  ORDER BY date_duty DESC LIMIT 1) AS id
FROM `students`  AS s  where released = 'no'   ORDER BY date_duty asc,name asc
";
$resultDutygu = mysql_query($sqlu);
while ($rowgu = mysql_fetch_assoc($resultDutygu)) { 
echo "<tr><td><input type='checkbox' name='student_id[]' value=''>".$rowgu['student_name']."</br></td></tr>";
};




Проверка на наличие post всегда почему то 1 пишет, вывод этого post - пусто.
Правильно ли сделал, может неправильно, из-за этого, поправьте пожалуйста
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601370
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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 (empty($_POST['student_id[]']))
{
echo "1";
echo $_POST['student_id'];
}
else
{
echo "0";
};

$sqlu = "SELECT 
s.id, 
s.name AS `student_name` ,s.released,
(SELECT date_duty FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS date_duty,
(SELECT student_id FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS student_id,
(SELECT class_id FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS class_id,
(SELECT id FROM student_duty WHERE student_id = s.id  ORDER BY date_duty DESC LIMIT 1) AS id
FROM `students`  AS s  where released = 'no'   ORDER BY date_duty asc,name asc
";
$resultDutygu = mysql_query($sqlu);
while ($rowgu = mysql_fetch_assoc($resultDutygu)) { 
echo "<tr><td><input type='checkbox' name='student_id[]' value=''>".$rowgu['student_name']."</br></td></tr>";
};




Проверка на наличие post всегда почему то 1 пишет, вывод этого post - пусто.
Правильно ли сделал, может неправильно, из-за этого, поправьте пожалуйста
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601377
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нашел ошибку, в html форме надо было объявить метод пост, еще надо было проверять student_id без скобок
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601378
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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 (empty($_POST['student_id[]']))
{
echo "1";
echo $_POST['student_id'];
}
else
{
echo "0";
};

$sqlu = "SELECT 
s.id, 
s.name AS `student_name` ,s.released,
(SELECT date_duty FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS date_duty,
(SELECT student_id FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS student_id,
(SELECT class_id FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS class_id,
(SELECT id FROM student_duty WHERE student_id = s.id  ORDER BY date_duty DESC LIMIT 1) AS id
FROM `students`  AS s  where released = 'no'   ORDER BY date_duty asc,name asc
";
$resultDutygu = mysql_query($sqlu);
while ($rowgu = mysql_fetch_assoc($resultDutygu)) { 
echo "<tr><td><input type='checkbox' name='student_id[]' value=''>".$rowgu['student_name']."</br></td></tr>";
};




Проверка на наличие post всегда почему то 1 пишет, вывод этого post - пусто.
Правильно ли сделал, может неправильно, из-за этого, поправьте пожалуйста
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601380
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нечайно отправилось как то повторно, проьлему решил, думаю дальше
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601415
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleДа там не сложно. Даете "галочке" name="student_id[]", и в цикле по полученному массиву $_POST['student_id'] формируете запрос INSERT.

я всё так сделал, теперь только надо вывести данные из массива и отправить в бд, как вывести из массива айдишники по одному в цикле, пробую так echo $_POST['student_id[]'];
вывел на страницу все глобальные переменные и вот что они говорят,
[_POST] => Array ( [student_id] => Array ( [0] => 11 [1] => 17 ) [sido] => Забить )
значения в массве есть, только как их вывести
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601426
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ильшат190,

Код: php
1.
2.
3.
4.
5.
6.
7.
$date = $_POST['дата занятия'];
$room = $_POST['аудитория'];
$stud = $_POST['student_id'];

$string = "','$date','$room'),('";

$insert = "INSERT INTO table (student_id, date, room) VALUES ('".implode($string, $stud)."','$date','$room')";
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601427
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
INSERT INTO table (student_id, date, room) VALUES ('11','01.05.2014','Каб. 216'),('17','01.05.2014','Каб. 216'),('24','01.05.2014','Каб. 216')


тестовый пример
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601467
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SharuPoNemnogu,
Спасибо,
я вот на форме в html "галочке" придал название и сделал
name="student_id[]" , как теперь с этого массива выводит данные последовательно?
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601523
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ильшат190,

куда выводить? Я же вам сформировал готовый запрос на добавление в базу. Вроде в этом заключалась суть вопроса.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601540
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SharuPoNemnogu,
Код: 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.
echo "<hr>
<form method='post'>
Отметьте пришедших учеников:<br>
<table align=center>";
print_r($GLOBALS);

$sqlu = "SELECT 
s.id, 
s.name AS `student_name` ,s.released,
(SELECT date_duty FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS date_duty,
(SELECT student_id FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS student_id,
(SELECT class_id FROM student_duty WHERE student_id = s.id ORDER BY date_duty DESC LIMIT 1) AS class_id,
(SELECT id FROM student_duty WHERE student_id = s.id  ORDER BY date_duty DESC LIMIT 1) AS id

FROM `students`  AS s  where released = 'no'   ORDER BY date_duty asc,name asc
";
$resultDutygu = mysql_query($sqlu);


while ($rowgu = mysql_fetch_assoc($resultStudents2)) { 

echo "<tr><td><input type='checkbox' name='student_id[]' value='".$rowgu['id']."'>".$rowgu['name']."</br></td></tr>";


};
echo "

</table>
<input type='submit' name='sido' value='Забить'>
</form>";



вот обработчик:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
if (empty($_POST['student_id']))
{}
else
{

while ($rowgu = mysql_fetch_assoc($resultStudents2)) { 

$sqlInsertu = "INSERT INTO `student_duty` VALUES(null, '$_POST['student_id']', '+', '')";
mysql_query($sqlInsertu); 
echo $_POST['student_id']; //тест

};

};



обработчик добавляет данные из массива student_id[] (который я поставил как названии галочек) , только вот она у меня нифига не добавляет, а вернее добавляет пустоту, как правильно написать чтобы данные из массива выводились
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601818
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ильшат190,

вы издеваетесь да? Я же написал уже как

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
if (!empty($_POST['student_id'])) {

    $stud = $_POST['student_id'];

    $string = "','+',''),('";

    $insert = "INSERT INTO table (student_id, class_id, date_duty) VALUES ('".implode($string, $stud)."','+','')";

    mysql_query($insert); 

}
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601837
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SharuPoNemnogu,

Я не издеваюсь. Я не понимаю как она будет работать, если echo $_post[student_id]; ничего не выводит. И еще настараживает implode.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38601856
SharuPoNemnogu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ильшат190,

$_post[student_id] это массив, эхо то тут при чем. print_r попробуйте. И чем это насторожил implode?))

Вообще я дал вам решение. Разбирайтесь.
...
Рейтинг: 0 / 0
[php>mysql] Pаписать в таблицу через галочки.
    #38602175
Фотография ильшат190
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SharuPoNemnoguильшат190,

$_post[student_id] это массив, эхо то тут при чем. print_r попробуйте. И чем это насторожил implode?))

Вообще я дал вам решение. Разбирайтесь.

Всем спасибо, разобрался, всё работает.
...
Рейтинг: 0 / 0
33 сообщений из 33, показаны все 2 страниц
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [php>mysql] Pаписать в таблицу через галочки.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]