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

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

23.12.2018, 13:11. Показов 855. Ответов 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
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
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
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru