Проблема с сессиями

mr. Eof

Новичок
Проблема с сессиями

Добрый день!

Господа! Помогите мне пожалуйста решить проблему!
Я пишу на PHP5 и делаю все по мануалу на php.net! но всеравно не работает!
Я буду вам очень признателен! Спасибо!

Дано:
У меня есть 3 страницы:
1. Форма для ввода логина/пароля. (index.html)
PHP:
<HTML>
<form method='post' action='check.php'>
Login: <input type='text' name='login'><br>
Pass: <input type='password' name='pass'><br>
<input type=reset name='reset' value='Clear.'>
<input type=submit name='submit' value='   Ok.   '>
</form>
</HTML>
2. Страница, со скриптом, проверяющая логин/пароль и устанавливающая сессию. (check.php)
PHP:
<HTML><?php
$login=$_POST["login"];
$pass=$_POST["pass"];
if (($login=="login") and ($pass=="password")) {
session_name("session");
session_start();
$_SESSION['flag']='On';
echo "<p align='center'><b>Please wait!</b></p>";
echo "<meta http-equiv=Refresh content=1;url=admin.php?".SID.">";}
else {
echo "<p align='center'><b>Error! Wrong Login or password!</b></p>";
echo "<meta http-equiv=Refresh content=1;url=index.html>";}
?></HTML>
3. Страница, со скриптом, проверяющим разрешен доступ к ней (на основе сессии) или нет. (admin.php)
PHP:
<HTML><?php
session_name("session");
session_start();
if(!isset($_SESSION['flag'])) {
echo "<p align='center'><b>Get out from here!!!</b></p>";
echo "<meta http-equiv=Refresh content=1;url='index.html'>";}
else {
if ($_SESSION['flag']=='On') {echo "ok";} else {echo "not ok";}}
?></HTML>
Проблема:
На 1й взгляд все работает, но с ошибками:

На 2й странице (check.php):
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\Inetpub\wwwroot\123\check.php:2) in C:\Inetpub\wwwroot\123\check.php on line 8

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\Inetpub\wwwroot\123\check.php:2) in C:\Inetpub\wwwroot\123\check.php on line 8

Please wait!
и на 3й странице (admin.php):
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\Inetpub\wwwroot\123\admin.php:2) in C:\Inetpub\wwwroot\123\admin.php on line 4
ok
Господа, что это??
Он ругает меня кукисами, но ведь я параметры сессии передаю get- ом! Что это?

Спасибо огромное!
 

tony2001

TeaM PHPClub
это не будет работать:

<HTML><?php
session_start();
...

почему и как исправить: http://phpfaq.ru/headers
 

mr. Eof

Новичок
session_name("session"); - убери

не играет роли.
сначала ее небыло.
добавил - ничего не поменялось..
 

mr. Eof

Новичок
Блин!
Ну вы даете!!!
=)) заработало!!!

Кто мог подумать что из за такой мелочи - не заработает?!?!!?
=) Супер! Всем ОГРОМНОЕ спасибо!
http://phpclub.ru - forever!
 
Сверху