|
| |
|
|
| |
для: phpuser
(25.12.2007 в 09:53)
| | | В строке <input type='hidden' name='session_id' value='<?php echo session_id();?>'>
в атрибуте value значение лучше указать в двойных кавычках. | |
| |
|
|
| |
|
|
| |
для: Faraon
(25.12.2007 в 09:14)
| | | Все, я разобрался
index.php
<?php
/* инициализируем сессию */
session_start();
/* файл перебросить */
$a = "handler.php";
/* если кнопочка нажата, то*/
if($_POST['submit'])
{
/* выхватываем значения из полей ввода*/
/* и инициализируем ими значения переменных сессии */
$_SESSION['user'] = $_POST['name'];
$_SESSION['pass'] = sha1($_POST['send']);
/* пробная печать, что находится то, что нужно*/
echo $_SESSION['user'];
echo "<br />";
echo $_SESSION['pass'];
/* если значение сессии установленно, кидаем юзера на другой файл*/
if(isset($_SESSION['user']) && isset($_SESSION['pass']))
{
header ("Location: ". $a);
}
/* иначе ошибка*/
else
{
exit('Any error has occured');
}
}
?>
<html>
<head></head>
<body>
<form method='post'>
Name: <input type='text' name='name'><br />
Password: <input type='password' name='send' ><br />
<input type='hidden' name='session_id' value='<?php echo session_id();?>'>
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>
|
handler.php
<?php
session_start();
echo $_SESSION['user'];
echo '<br />';
echo $_SESSION['pass'];
?>
|
| |
| |
|
|
| |
|
|
| |
для: phpuser
(25.12.2007 в 09:04)
| | | Так переменной сессии сначала надо присвоить значение, например
$_SESSION['user']="Вася";
А так получается, что она у Вас пустая. | |
| |
|
|
| |
|
|
| |
для: Genki
(25.12.2007 в 08:16)
| | | >Возможно используется переадресация вроде header('location:site/page.php') тогда нужно передавать сессию вручную
В таком случае, как мне перебросить человека после успешной авторизации на закрытую часть сайта? | |
| |
|
|
| |
|
|
| |
для: phpuser
(25.12.2007 в 07:44)
| | | Ребят, объясните мне, пожалуйста вот этот пример из книги "ПХП в примерах"
<?php
session_start();
?>
<form method='post'>
Name: <input type='text' name='name' value='<?php echo $_SESSION['user']; ?>' /><br/>
Password: <input type='password' name='password' value='<?php echo $_SESSION['password']; ?>' /><br/>
<input type='submit' name='submit' value='Submit' />
</form>
<?php
echo 'Здравствуйте, '.$_SESSION['user'];
?>
|
вопрос, где происходит инициализация $_SESSION['user']?
получается, что в value содержится пустое значение и переменная сессии никуда не передается | |
| |
|
|
| |
|
|
| |
для: phpuser
(25.12.2007 в 07:44)
| | | Возможно используется переадресация вроде header('location:site/page.php') тогда нужно передавать сессию вручную | |
| |
|
|
| |
|
|
| |
для: LordLeo
(25.12.2007 в 07:38)
| | | нет, там все в порядке
кажется, что проблема в настройках php.ini, но какая именно? | |
| |
|
|
| |
автор: LordLeo (25.12.2007 в 07:38) |
|
| |
для: phpuser
(25.12.2007 в 06:06)
| | | Возможно ты поставил тег </form> до тега <input type="submit" ...> | |
| |
|
|
| |
|
|
| | Понять не могу, в чем причина - между страницами сессия передается (используя переход по гиперсылке). Но когда я пытаюсь ввести данные в форму, передать их и выдернуть на следующей странице (проверить - работает ли сессия) - отображается лишь пустой экран.
isset($_SESSION['user']) также выдает результат об отсутствии значения
ЗЫ: 1) session_start() в начале файла использую
2) с сессиями работаю с $_SESSION | |
| |
|
|
|