Работа с Cookie, один и тот же код но в разных браузерах

XfroSt

Новичок
Работа с Cookie, один и тот же код но в разных браузерах

Решил написать скрипт показывающий кто на сайте в данный момент.

Для этогго использую Cookie и MySQL

В верху каждой страницы вставляю код
PHP:
$code = set_activ($auth[1],$auth[3]);  
SetCookie("auth[3]",$code);
функция set_activ находиться в отдельном файле который подгружается до данного кода...
Фукция выглядит так:

PHP:
function set_activ($name,$code)  
{
include ('cnf.php');              
mysql_connect ($dbhost , $dbuser , $dbpass);               
mysql_select_db($dbusr);              
             	if ($code == '')          			
{  			        
 $code = mt_rand();  					 
SetCookie("auth[3]",$code);  					
	                mysql_query("INSERT INTO ".$tb_online." (name, code, time) values ('$name','$code','".time()."')")or die(mysql_error());      	        
	}                      
else                      
{                      
$rs = mysql_query("select * from ".$tb_online." WHERE code = ".$code." ");                      
$rows = mysql_num_rows($rs);  	                   
 if ($rows)                          
{                       
                        mysql_query("UPDATE ".$tb_online." SET time = '".time()."', name ='".$name."' WHERE `code` = '".$code."'")or die(mysql_error());                          
}                          
else                          
{                                              
 mysql_query("INSERT INTO ".$tb_online." (name, code, time) values ('$name','$code','".time()."')")or die(mysql_error());                          
}                      
}        	
return $code;  
}
Дело в том что когда клиент заходит из под Opera или Mozzila то все работает хорошо
при первом посещении если запись в куках с кодом пустая, то генериться CODE заноситься в базу
PHP:
ID     name     code                    time
1		779619296	1159607215
и записывается в куки пользователя, затем уже путешествуя по другим страницам сайта, обновляется время в базе
PHP:
ID     name     code                    time
1		779619296	1159607307
при соответствующем CODE выдергиваемом из кук, если пользователь регистрируется и входит, то в базе с соответствующим CODE обновляется имя....
PHP:
ID     name     code                    time
1	XfroSt  779619296	1159607417
Но вот в IE или MyIE все почему по другому... при первом входе все записывается в базу
PHP:
ID     name     code                    time
1	         2020742711	1159607417
, затем если пользователь перешел на другую страницу сайта то почему оно записывается заново ..
PHP:
ID     name     code                    time
5	         2020742711	1159607417 
6	         1594746780	1159607574
т.е. получается еще одна запись.. она остается при последующих переходах обнавляется старая запись ....
PHP:
ID     name     code                    time
5	         2020742711	1159607757 
6	         1594746780	1159607574
при входе на сайт опять записывается новая ....
PHP:
ID     name     code                    time
5	           2020742711	1159607757 
6	           1594746780	1159607574
7	XfroSt  1920333377	1159607812
т.е. если в Опере и Мозиле куки идут через всю жизнь страницы .. то в IE они прерываются....

Как вы думаетте в чем может быть проблема ?

Может я неправильно работаю с куками ?
 

Фанат

oncle terrible
Команда форума
гм.
ты не мог бы остановиться на чём-то одном?
если у тебя проблемы с куками, то и разбираться только с ними, без БД, MySQL и функций?
 

XfroSt

Новичок
Автор оригинала: Андрейка
ошибка в 9ой строке функции
не
PHP:
SetCookie("auth[3]",$code);
а
PHP:
SetCookie("auth[3]","$code");
??

Это можно вообще убрать, т.к. в заголовке страницы после выполнения фукции она повторяется

Автор оригинала: Фанат
гм.
ты не мог бы остановиться на чём-то одном?
если у тебя проблемы с куками, то и разбираться только с ними, без БД, MySQL и функций?
Проблема то скорее всего не с БД или фукцией, а с куками ....
Они по разному записываются вразных браузерах ?
 

Андрейка

Senior pomidor developer
не SetCookie("auth[3]",$code); а SetCookie("auth[3]","$code");
неа, не угадал

Это можно вообще убрать, т.к. в заголовке страницы после выполнения фукции она повторяется
не, на это мы пойтить не могем! нам надо посоветоваться с шефом!
 

XfroSt

Новичок
Автор оригинала: Андрейка
не SetCookie("auth[3]",$code); а SetCookie("auth[3]","$code");
неа, не угадал

Это можно вообще убрать, т.к. в заголовке страницы после выполнения фукции она повторяется
не, на это мы пойтить не могем! нам надо посоветоваться с шефом!
:confused: :(
 

Фанат

oncle terrible
Команда форума
Проблема то скорее всего не с БД или фукцией, а с куками ....
правильно.
НУ ВОТ И ЗАНИМАЙСЯ КУКАМИ.
Это можно вообще убрать, т.к. в заголовке страницы после выполнения фукции она повторяется
что значит - можно? а почему ты до сих пор не убрал? какой смысл в повторении?
 

XfroSt

Новичок
Убрал ....

Но почему в одних браузерах работает, а в других нет ?

Подскажите что не так с куками ?
 

XfroSt

Новичок
то что ошибки надо ловить отладкой и так понятно... но трудность в том что в одном браузере все работает, а в другом нет.

и ошибок не выдает.
 

Андрейка

Senior pomidor developer
удалил строчку, почистил кукисы(тока сразу не надо отвечать, подумай) и все еще не работает?
 

Фанат

oncle terrible
Команда форума
такое ощущение, что я разговариваю с деревом.
XfroSt
скажи пожалуйста, к чему ты написал своё последнее сообщение?
почему ты не написал сюда результаты отладки, а написал какую-то бессмысленную философию?

почему, мля, я должен тебя заставлять решать свою просблему?!
почему я должен 20 раз написать, что тебе надо сделать?
почему нельзя это сделать с первого раза?
объясните мне, кто нибудь?

-~{}~ 30.09.06 16:59:

но трудность в том что в одном браузере все работает, а в другом нет.
НУ ТАК И ОТЛАЖИВАЙ В ТОМ, В КОТОРОМ НЕ РАБОТАЕТ!!!
 

XfroSt

Новичок
я нашел в чем была проблема.....

Оказалось все куда тривиальней
куки для адресов
http://www.mysite.com
и
http://mysite.com
оказывается разные, признаюсь я этого не знал...
от сюда и проблемы заходя на www одни куки а переходя по ссылкам уже без www получается и другие куки.

Остается изначально всех переправлять под один адрес...

Спасибо за помошь.
 

Фанат

oncle terrible
Команда форума
ага. а в опере с мозиллой куки установленные на www.mysite.com, прекрасно отдавались при запросе mysite.com
отсюда и проблемы
проблемы от невнимательности.
от неспособности повторить примитивный тест под разными браузерами.
 
Сверху