Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 10.10.2012
Сообщений: 5
1

Работа с сессиями в php

01.11.2012, 16:35. Показов 1024. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток. Помогите пожалуйста с кодом.
У меня есть 2 файла с кодами: один файл html, другой в php.
Вот, собственно и сами коды.
HTML
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<html>
<body>
<?PHP>
<h2> Аутентификация пользователя </h2>
<form method= "POST" action= "inform.php">
<table style='backround-color:#CCCC99;'>
<tr> <td> Выберите свой статус </td> </tr>
<tr> <td> <input type='radio' name='status' value="1"> Студент </td> </tr>
<tr> <td> <input type='radio' name='status' value="2"> Преподаватель </td> </tr>
<tr> <td> <input type='radio' name='status' value="3"> Абитуриент </td> </tr>
<tr> <td> <input type='submit' name='submit' value="ОК"> </td> </tr>
</form>
</table>
</body>
</html>
PHP
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
<?php
$fl=$_POST['status'];
if ($fl==2)
{
 $zg="Информация преподавателю";
 $str="Введите фамилию и инициалы";
}
else ($fl==1)
{
 $zg="Информация студенту";
 $str="Введите номер зачетки";
}
else($fl==3)
{
$zg="Информация абитуриенту";
$str="Введите интересующую Вам специальность";
}
?>
<html>
<head>
   <title> <?PHP $zg ?> </title>
</head>
<body>
   <h2> <? echo $zg ?> </h2>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
   <table style='background-color: #CCCC99;'>
   <tr><td> <?= $str ?> </td></tr>
   <tr><td><input name="user_name" size="10" type="text" value= "<?php echo $_POST['user_name'] ?>"></td></tr>
   <tr><td><input type='submit' name='OK' value='OK'></td></tr>
   </table>
   <br>
   </form>
<?php
if ($_POST['OK'])
{
$us=$_POST['user_name'];
if ($us=="")
{
 $user="Регистрация не произведена. Поле ввода информации не заполнено.";
}
 else
{
 $user="Регистрация произведена успешно.";
}
}
?>
<? echo $user ?>
<a href="Index.html"> назад </a>
</body>
</html>
Их надо переделать в переменную SESSION. Заранее благодарю за помощь.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.11.2012, 16:35
Ответы с готовыми решениями:

Работа с сессиями php и шифрование паролей
в чем суть. есть два УРЛА test1.ru/blog/ test1.ru/blog/index.php они вроде не отличаются, но ...

Трудности с сессиями в Php
На локальном хостинге авторизация работает, а вот при переносе на виртуальный только наполовину....

Проблемы с php сессиями
Всем привет! В очередной раз столкнулся с &quot;мистическим поведением кода&quot; и недоумеваю по этому...

Работа с сессиями
Здравствуйте. Разрабатываю онлайн-чат для сайта. Есть необходимость работы с session_start() и...

7
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
01.11.2012, 19:55 2
Цитата Сообщение от Alexsey_s789re Посмотреть сообщение
Их надо переделать в переменную SESSION.
кого, их-то?
0
6 / 6 / 0
Регистрация: 28.07.2012
Сообщений: 47
01.11.2012, 20:02 3
Цитата Сообщение от Alexsey_s789re Посмотреть сообщение
Их надо переделать в переменную SESSION
Их это кого или чего?? Если пользователей, то нужно объявить до вывода какой-то информации в браузер session_start(); и если вход пользователя состоялся, то
PHP
1
$_SESSION['log'] = $_POST['user_name'];
Добавлено через 1 минуту
KOPOJI, опередил
0
0 / 0 / 0
Регистрация: 10.10.2012
Сообщений: 5
01.11.2012, 22:11  [ТС] 4
Преподаватель сказал, что надо переделать лабораторную(то есть эти коды) в переменную SESSION. Отношение к заочникам у преподавателей таков, что "я скажу, они(студенты) сами догадаются, что как делать"...
0
356 / 280 / 22
Регистрация: 27.08.2012
Сообщений: 855
01.11.2012, 23:22 5
Цитата Сообщение от Alexsey_s789re Посмотреть сообщение
Преподаватель сказал, что надо переделать лабораторную(то есть эти коды) в переменную SESSION. Отношение к заочникам у преподавателей таков, что "я скажу, они(студенты) сами догадаются, что как делать"...
И теперь Вы решили общественность нагрузить задачей, в которой сами не знаете, что нужно сделать?

Добавлено через 8 минут
ок, я понял, что Вам нужно, сейчас напишу!

Добавлено через 20 минут
Единственное что нужно будет и первый файл сделать .php поскольку в нём удаляется сессия!
index.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php 
 session_start();
 session_destroy();?>
<html>
<body>
<h2> Аутентификация пользователя </h2>
<form method= "POST" action= "inform.php">
<table style='backround-color:#CCCC99;'>
<tr> <td> Выберите свой статус </td> </tr>
<tr> <td> <input type='radio' name='status' value="1"> Студент </td> </tr>
<tr> <td> <input type='radio' name='status' value="2"> Преподаватель </td> </tr>
<tr> <td> <input type='radio' name='status' value="3"> Абитуриент </td> </tr>
<tr> <td> <input type='submit' name='submit' value="ОК"> </td> </tr>
</form>
</table>
</body>
</html>
inform.php
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
<?php
$fl=$_POST['status'];
if ($fl==2)
{
 $zg="Информация преподавателю";
 $str="Введите фамилию и инициалы";
}
else if($fl==1)
{
 $zg="Информация студенту";
 $str="Введите номер зачетки";
}
else if($fl==3)
{
$zg="Информация абитуриенту";
$str="Введите интересующую Вам специальность";
}
session_start();
if (empty ($_SESSION))
{
    $_SESSION['zg'] = $zg;
    $_SESSION['str'] = $str;
    
}
 
?>
<html>
<head>
   <title> <?php $_SESSION['zg']; ?> </title>
</head>
<body>
   <h2> <? echo $_SESSION['zg']; ?> </h2>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
   <table style='background-color: #CCCC99;'>
   <tr><td> <?= $_SESSION['str'] ?> </td></tr>
   <tr><td><input name="user_name" size="10" type="text" value= "<?php echo $_POST['user_name'] ?>"></td></tr>
   <tr><td><input type='submit' name='OK' value='OK'></td></tr>
   </table>
   <br>
   </form>
<?php
if ($_POST['OK'])
{
$us=$_POST['user_name'];
if ($us=="")
{
 $user="Регистрация не произведена. Поле ввода информации не заполнено.";
}
 else
{
 $user="Регистрация произведена успешно.";
}
}
?>
0
198 / 166 / 23
Регистрация: 20.04.2011
Сообщений: 750
Записей в блоге: 1
02.11.2012, 00:07 6
fa2m, Начинать сессию в середине кода ПЛОХО. Лучше в начало вынести.
0
356 / 280 / 22
Регистрация: 27.08.2012
Сообщений: 855
02.11.2012, 01:09 7
Цитата Сообщение от c4boomb Посмотреть сообщение
fa2m, Начинать сессию в середине кода ПЛОХО. Лучше в начало вынести.
Чё "плохо"? Главное до вывода в браузер!
0
KOPOJI
02.11.2012, 09:41     Работа с сессиями в php
  #8

Не по теме:

Цитата Сообщение от fa2m Посмотреть сообщение
Чё "плохо"?
не так наглядно, если код разрастется - будет проблематично. К тому же можно просто-напросто забыть о том, что сессия запускается ниже и вывести что-то в браузер. Поэтому их обычно и выносят наверх - чтобы не путаться.

1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.11.2012, 09:41

Работа с сессиями
Привет всем ) нуждаюсь в помощи ) поэтому прошу у вас ) заранее спасибо. Задание во вложениях...

Работа с сессиями
привет пишу простенькую програмку. регаю пользователя, если все ок, то перехожу на страницу с его...

Работа с сессиями
У меня выводит =&gt; 1 Но пишет что мне нет доступа . if (isset($_SESSION) == 1) { echo 'Вы...

Работа с сессиями
всем привет. у меня появилась проблема. Есть интернет магазин, в нем есть корзина работающая на...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru