|
|
|
| Уважаемые профессионалы! помогите пожалуйста разобраться в чем ошибка!
Не передается значение переменной в сессии (делаю буквально как в учебнике).
Страница 1:
<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=Windows-1251">
<title>page1.php</title>
</head>
<body>
<?
@session_start();
$_SESSION['username']="maksim";
echo 'Привет,'.$_SESSION['username']."<br>";
echo "<a href='page2.php'>На следующую страницу</a>";
?>
</body>
</html>
Страница 2:
<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=Windows-1251">
<title>page2.php</title>
</head>
<body>
<br>
<?
@session_start();
echo @$_SESSION['username'].' ты перешел на другую страницу сайта!';
echo ("<br>");
?>
<a href="page3.php">На следующую</a>
</body>
</html>
и наконец последняя:
<html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=Windows-1251">
<title>page3.php</title>
</head>
<body>
<?
@session_start();
unset($_SESSION['username']);
echo "Привет,".@$_SESSION['username'];
session_destroy();
?>
</body>
</html>
Заранее благодарен всем. | |
|
|
|
|
|
|
|
для: Kirill-rat
(14.07.2007 в 16:15)
| | Вы специально at перед session_start() поставили? | |
|
|
|
|
|
|
|
для: Unkind
(14.07.2007 в 16:19)
| | да, специально,поскольку инчаче выводилось следующее предупреждение :
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\www\page2.php:9) in C:\www\page2.php on line 10 | |
|
|
|
|
|
|
|
для: Kirill-rat
(14.07.2007 в 16:26)
| | Функцию session_start нужно вызывать перед любым выводом в браузер. Иначе cookie не отсылаются, в этом вся проблема. И вопрос нужно было задавать именно по этому поводу.
Т.е. в вашем случае это будет выглядеть так:
<?php
session_start();
?><html>
<head>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=Windows-1251">
<title>page1.php</title>
</head>
<body>
<?
$_SESSION['username']="maksim";
echo 'Привет,'.$_SESSION['username']."<br>";
echo "<a href='page2.php'>На следующую страницу</a>";
?>
</body>
</html>
|
| |
|
|
|
|
|
|
|
для: sms-send
(14.07.2007 в 16:34)
| | Спасибо огромное! Все работает!
Следовательно, это означает, что ошибка в самом учебнике, либо описание очень сжатое и новичкам трудно отследить подобные нюансы? | |
|
|
|
|
|
|
|
для: Kirill-rat
(14.07.2007 в 16:44)
| | А в учебнике перед символами "<?" что то есть? И что за учебник? | |
|
|
|
|
|
|
|
для: sms-send
(14.07.2007 в 16:48)
| | Учебник, который лежит здесь же:
P.S. Другие пока отложил на время.
http://www.softtime.ru/bookphp/gl8_1.php | |
|
|
|
|
|
|
|
для: Kirill-rat
(14.07.2007 в 16:56)
| | В учебнике перед session_start нет никакого вывода, а у вас есть.
<?
session_start();
$_SESSION['username'] = "maksim";
echo 'Привет, '.$_SESSION['username']."<br>";
?>
<a href="page2.php">На следующую страницу </a>
|
Единственную ошибку, которую там заметил (опечатка скорее):
$result = session_is_registerd("username");
|
| |
|
|
|
|
|
|
|
для: Kirill-rat
(14.07.2007 в 16:26)
| | да, специально,поскольку инчаче выводилось следующее предупреждение :
Если выводится предупреждение, то следует узнать причину его возникновения и устранять ошибку, а не подавлять.
делаю буквально как в учебнике
Если бы сделали буквально, как в учебнике, то заметили, что ошибки такой нет. | |
|
|
|