0 / 0 / 0
Регистрация: 22.12.2018
Сообщений: 17
MySQL

Не могу сделать так, что бы к сессии прибавлялся 1 не при каждом обновлении, а через раз

23.12.2018, 13:11. Показов 879. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Делаю что-то на подобии зачётки, которую создала через CSS. Когда я нажимаю на кнопку далее/назад, у меня меняются цифры на страницах и семестр. Семестры меняются так, как надо, 1, 2, 3... и так далее. Курсы тоже меняются, но проблема в том, что они меняются так же, как и семестры (1 курс-1 семестр, 2 курс-2 семестр...), а этого быть не должно, ведь в 1-ом курсе 2 семестра... Как мне сделать так, что бы у меня было так: 1 курс-1 семестр, 1 курс-2 семестр, 2 курс-3 семестр и и так далее..?
P. S.: Все данные записаны в Session.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.12.2018, 13:11
Ответы с готовыми решениями:

Как сделать так что бы при нажатии одной кнопки сделать разные вещи несколько раз ?
можно взять интегер i, и если оно ровно 1 то делай это а если нет то нет и если кликнуть на кнопку то i ровно 1, так другая кнопка будет...

как сделать через if так , что бы и в первом и во втором примере , каждый раз происходило умножение только на один множ
подскажите , пожалуйста ,как сделать с помощь if так , что бы и в первом и во втором примере , каждый раз происходило умножение только на...

Что то не так с кодировкой при обновлении БД
У меня возникла проблема, что только не делал. При сохранении формы, в базе данных обновляется информация, все ок, только вот если в эти...

7
767 / 323 / 157
Регистрация: 26.05.2016
Сообщений: 2,127
23.12.2018, 14:01
Не плюс один прибавлять, а плюс 2
0
0 / 0 / 0
Регистрация: 22.12.2018
Сообщений: 17
23.12.2018, 14:11  [ТС]
Тогда он начинает с 2-х и прибавляет с каждым обновлением по 2
0
Эксперт PHP
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
23.12.2018, 14:20
Покажите код.
0
0 / 0 / 0
Регистрация: 22.12.2018
Сообщений: 17
23.12.2018, 14:26  [ТС]
Он огромный...

Добавлено через 4 минуты
<?php session_start();
if (!$_POST) session_destroy();
if (empty($_SESSION['semester'])) $_SESSION['semester']=1;
if (!empty($_POST['sub'])){
if ($_POST['sub']=='Далее') {$_SESSION['semester']++;}
}
if (!empty($_POST['back'])){
if ($_POST['back']=='Назад') {$_SESSION['semester']--;}
}?>
...
<!DOCTYPE html>
<html>
<head>
<title> </title>
</head>
<body>
<link rel="stylesheet" type="text/css" href="1.css">
<?php $tbl=mysqli_query($link, "SELECT `id_sub`.`Предмет`, `zachotka`.`hour`, `id_assessment`.`Оценка`, `zachotka`.`Дата`, `id_teacher`.`Преподаватель` FROM `zachotka`, `id_sub`, `id_assessment`, `id_teacher` WHERE `id_semester`='".$_SESSION['semester']."' and `zachotka`.`id_sub`= `id_sub`.`ID` and `zachotka`.`id_teacher`= `id_teacher`.`ID` and `zachotka`.`id_assessment`=`id_assessmen t`.`ID` and `zachotka`.`id_type`=3 " );
?>
<div id="b1">
<p class="rms"> <?php echo $_SESSION['semester']+1 ?>-й семестр 20<?php echo '16'; // дописать ?> /20<?php echo '17'; ?> учебного года </p>

//выводится таблица и её содержимое...

</div>

<?php $tbl=mysqli_query($link, "SELECT `id_sub`.`Предмет`, `zachotka`.`hour`, `id_assessment`.`Оценка`, `zachotka`.`Дата`, `id_teacher`.`Преподаватель` FROM `zachotka`, `id_sub`, `id_assessment`, `id_teacher` WHERE `id_semester`='".$_SESSION['semester']."' and `zachotka`.`id_sub`= `id_sub`.`ID` and `zachotka`.`id_teacher`= `id_teacher`.`ID` and `zachotka`.`id_assessment`=`id_assessmen t`.`ID` and (`zachotka`.`id_type`=1 or `zachotka`.`id_type`=2) ");
?>
<div id="b2">
<p class="rmt"> <?php echo ""; ?>______________________________</p>
<p class="rmtt"> (Фамилия, И.,О.студента(курсанта)</p>
<p class="rmttt"> КУРС <?php echo $_SESSION['semester']+1; ?>______________________________________ ____________________ </p>
<p align="center" id="rmsss"> <b> Результаты промежуточной аттестации (зачеты) </b> </p>

//снова таблица и её содержимое...

</div>
<div>
<form action="" method="post">
<input class="next" type="submit" name="sub" value="Далее">
<input class="back" type="submit" name="back" value="Назад">
</form>
</div>
</body>
</html>
0
767 / 323 / 157
Регистрация: 26.05.2016
Сообщений: 2,127
23.12.2018, 14:47
А вы создайте переменную с одного и прибавляете два)
0
0 / 0 / 0
Регистрация: 22.12.2018
Сообщений: 17
23.12.2018, 14:58  [ТС]
У меня при каждом нажатии кнопки меняется семестр на 1, как и курс. Если прибавлять 2 к курсу, то семестр останется меняться на 1, курс на 2, но это будет происходить при каждом обновлении страницы. А мне нужно, что бы 1 курс был при 2-х обновлениях, так как в 1-ом курсе 2 семестра)
0
767 / 323 / 157
Регистрация: 26.05.2016
Сообщений: 2,127
24.12.2018, 14:11
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
 <?php session_start();
  if(isset($_POST['clear']) ) {unset($_SESSION['count']);}
 
 
  if(isset($_SESSION['count']) AND $_SESSION['count']<=0 OR isset($_SESSION['count']) AND $_SESSION['count']>30) {unset($_SESSION['count']); die("Вы ввели неправильное значение");}
 
 
if(isset($_POST['sub'])) {//sub
 
 
if(isset($_POST['count'])) {$count = $_POST['count']; }
 
if(isset($_SESSION['count']) ) {$count = $_SESSION['count']= $_SESSION['count']+1;}
 
 
 
 
 
$d = $count+1;
 
 
echo '<b>'.$count.'-курс: </b>[';
 
echo '<i>'.$count.'-cиместр: </i>|';
echo '<i>'.$d.'-cиместр</i>] ';
 
 
 
 
 
 
 
 
 }//sub
 
 
 
 
 
 
if(isset($_POST['back'])) {//back
if(isset($_POST['count'])) {$count = $_POST['count']; }
 
if(isset($_SESSION['count'])) {$count = $_SESSION['count']= $_SESSION['count']-1;}
 
 
 
 
$d = $count+1;
 
 
echo '<b>'.$count.'-курс: </b>[';
 
echo '<i>'.$count.'-cиместр: </i>|';
echo '<i>'.$d.'-cиместр</i>] ';
 
 
 
 
 }//back
 
 
 
 
 
 
 
 
?>
HTML5
1
2
3
4
5
6
7
<form action="" method="post">
<input class="next" type="submit" name="sub" value="Далее">
<input class="back" type="submit" name="back" value="Назад">
<input class="back" type="submit" name="clear" value="Очистить">
<input class="back" type="hidden" name="count" value="<?PHP if(isset($count)) { $_SESSION['count'] = $count; } else {echo $count = 1;} ?>">
 
</form>
Добавлено через 32 секунды
с условием на 5 строке чуть не правильно - но думать уже лень

Добавлено через 53 секунды
остальное подставьте сами

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

Сделать так, что бы при неверном значении программа сообщала об этом и запускала функцию второй раз
Возникла проблема в программе. void rasa (int classa) это функция которая принимает число 1-2-3 и в зависимости от числа отправляет нужное...

Как сделать так, что при нажатии клавиши ( не могу сформулировать)
Всем привет, как бы сделать так, что допустим я ввожу длину и ширину, затем я нажимаю &quot;P&quot; и он считает периметр или &quot;S&quot;...

Как бы так сделать, чтобы при обновлении странички сохранялось значение переменной?
Подскажите как бы так сделать, чтобы при обновлении странички сохранялось значение переменной?

Github Что за ошибка при обновлении кода на pythonanywhere.com? Не могу исправить
(myvenv) 04:12 ~/my-first-blog (master)$ git pull Updating 83263a2..35c802a error: Your local changes to the following files would be...

Как сделать так чтобы в tetxbox1 выводились числа от одного до 175 но при условии того что я должен нажать 175 раз на
Как сделать так что бы в tetxboxs1 выводиллись числа от одного до 175 но при условий того что я должен нажать 175 раз на кнопку и ввывод...


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

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

Новые блоги и статьи
Отчёт о затраченных материалах за определенный период с макетом печатной формы
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