теряется переменные в сессии при закачке файла..

Sam

Новичок
теряется переменные в сессии при закачке файла..

я в непонятках, в чём дело, помогите, плз..

Авторизация на сессиях. Работает нормально, но после отсылки формы для закачки файла значение $_SESSION[name] заменяется на "Array"

так происходит авторизация:




------core.php------

if (isset($_REQUEST[session_name()])) {
session_start();
}



if (isset($_POST[auto])) {


$result = mysql_query("SELECT * FROM users WHERE login = '$_POST[name]'", $link);
$usr = mysql_fetch_array($result);

if ($usr['pwd'] == md5($_POST['pwd'])) {
session_start();
$_SESSION['name']=$usr['login'];
$_SESSION['mail']=$usr['mail'];
$_SESSION['usr_id']=$usr['id'];
$right = "";
} else {
$right = "Такого пользователя не существует. <a href='?p=reg/index'>Зарегестрируйтесь</a><br><br>";
}

}

-----------------------




------auto.php------


echo $right;

if (!isset($_SESSION['name'])) { ?>
<form action='' method=post>
<input type=hidden name=auto value=1>
<input type=hidden name=posted value=1>
<br>Введите ваше <b>имя</b>:
<input type=text name=name size=10 class=frm height=15><br><br>
и <b>пароль</b>:<br>
<input type=password name=pwd size=10 class=frm height=15><br><br>
<br><input type=submit value=ok class=frm></form><br>
<a href="?p=reg/index">Регистрация</a><br><br>
<? } else {
?> Привет, <b><?=$_SESSION['name'];?></b> <?
}

------------------------



Вот форма для закачки файла.


-----upload.php----

<form action="" method=post enctype=multipart/form-data>
<input type="hidden" name="MAX_FILE_SIZE" value="3000000">
Выберите картинку:<br><input type="file" name="usrimg"><br><br>
<input type=submit name="upload" value="Загрузить" class=frm>
<input type=hidden name=posted value="1">
<input type=hidden name="id" value="<?=$_GET['id'];?>">
</form>

-----------------------
 

Sam

Новичок
Фанат, странно, но он вроде не потерялся... сорри за длинные посты..


заголовки перед отправкой

http://******/www/index.php?p=stati/admin/statya&id=2&stid=9

POST /sam/www/index.php?p=stati/admin/statya&id=2&stid=9 HTTP/1.1
Host: *****.ru
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040707 Firefox/0.8
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://*****/www/index.php?p=stati/admin/redact_razdel&id=2
Cookie: PHPSESSID=cd59595517f41c63de32d690e578d7e5
Content-Type: application/x-www-form-urlencoded
Content-Length: 74
redact=%D0%E5%E4%E0%EA%F2%E8%F0%EE%E2%E0%F2%FC&posted=1&action=redact&id=9
HTTP/1.x 302 Found
Date: Fri, 20 Aug 2004 07:26:11 GMT
Server: Apache/1.3.27 (Unix) PHP/4.3.2 mod_ssl/2.8.14 OpenSSL/0.9.7b rus/PL30.17
X-Powered-By: PHP/4.3.2
Location: /sam/www/index.php?p=stati/admin/statya&id=2&stid=9
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=windows-1251
----------------------------------------------------------
http://*****/www/index.php?p=stati/admin/statya&id=2&stid=9

GET /sam/www/index.php?p=stati/admin/statya&id=2&stid=9 HTTP/1.1
Host: ******.ru
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040707 Firefox/0.8
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://*******/www/index.php?p=stati/admin/redact_razdel&id=2
Cookie: PHPSESSID=cd59595517f41c63de32d690e578d7e5

HTTP/1.x 200 OK
Date: Fri, 20 Aug 2004 07:26:12 GMT
Server: Apache/1.3.27 (Unix) PHP/4.3.2 mod_ssl/2.8.14 OpenSSL/0.9.7b rus/PL30.17
X-Powered-By: PHP/4.3.2
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=windows-1251

-----------------------------------------------------------

заголовки после отправки: (в этот момент теряются значения переменных сессии)


http://******.ru/sam/www/index.php?p=stati/admin/statya&id=2&stid=9

GET /sam/www/index.php?p=stati/admin/statya&id=2&stid=9 HTTP/1.1
Host: ******.ru
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040707 Firefox/0.8
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,image/jpeg,image/gif;q=0.2,*/*;q=0.1
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://*******.ru/sam/www/index.php?p=stati/admin/statya&id=2&stid=9
Cookie: PHPSESSID=cd59595517f41c63de32d690e578d7e5

HTTP/1.x 200 OK
Date: Fri, 20 Aug 2004 07:27:49 GMT
Server: Apache/1.3.27 (Unix) PHP/4.3.2 mod_ssl/2.8.14 OpenSSL/0.9.7b rus/PL30.17
X-Powered-By: PHP/4.3.2
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=windows-1251
 

Stefix

Guest
имя переменной внутри скрипта не совпадает с именем переменной в сессии? Если да, то попробуй сменить
 

Sam

Новичок
Stefix, спасибо, помогло...

переименовал $_SESSION[name] в $_SESSION[login]

$_SESSION[login] = $usr[login]


только почему это сработало? ))
почему переменная $_SESSION[usr_id],
(которую задавали
$_SESSION[usr_id] = $usr[id] ) не терялась?
 

Фанат

oncle terrible
Команда форума
Естественно, что Stefix написал бред сивой кобылы, а помог он тебе только потому, что у тебя была опечатка в скрипте и этими манипуляциями ты ее исправил
 

Sam

Новичок
а авторизация не кривая? может кто из спецов посмотрит?
 

Фанат

oncle terrible
Команда форума
нормальная авторизация.
Можешь еще добавить проверку ip - записывать в сессию ip в момент авторизации, и сравнивать при проверке авторизаци из сессии.
 
Сверху