setcookie("SEDITIO", "$u", time()+$rcookiettl, $cfg['cookiepath'], $cfg['cookiedomain']);
$cfg dizisindeki verileri kontrol edin.
$cfg['cookiepath'] = /
$cfg['cookiedomain'] = .siteadresi.com olmalı
elseif (isset($_COOKIE['SEDITIO']) && ($cfg['authmode']==1 || $cfg['authmode']==3))
{
$u = base64_decode($_COOKIE['SEDITIO']);
$u = explode(':_:',$u);
$rsedition = sed_import($u[0],'D','INT');
$rseditiop = sed_import($u[1],'D','PSW');
$rseditios = sed_import($u[2],'D','ALP');
}
if ($rsedition>0 && $cfg['authmode']>0)
{
if (mb_strlen($rseditiop)!=32)
{ sed_diefatal('Wrong value for the password.'); }
if ($cfg['ipcheck'])
{ $sql = sed_sql_query("SELECT * FROM $db_users WHERE user_id='$rsedition' AND user_password='$rseditiop' AND user_lastip='".$usr['ip']."'"); }
else
{ $sql = sed_sql_query("SELECT * FROM $db_users WHERE user_id='$rsedition' AND user_password='$rseditiop'"); }
if ($row = sed_sql_fetcharray($sql))
{
if ($row['user_maingrp']>3)
{
$usr['id'] = $row['user_id'];
$usr['sessionid'] = ($cfg['authmode']==1) ? md5($row['user_lastvisit']) : session_id();
$usr['name'] = $row['user_name'];
$usr['maingrp'] = $row['user_maingrp'];
$usr['lastvisit'] = $row['user_lastvisit'];
$usr['lastlog'] = $row['user_lastlog'];
$usr['timezone'] = $row['user_timezone'];
$usr['skin'] = ($cfg['forcedefaultskin']) ? $cfg['defaultskin'] : $row['user_skin'];
$usr['lang'] = ($cfg['forcedefaultlang']) ? $cfg['defaultlang'] : $row['user_lang'];
if ($cfg['mobile_client']){$usr['skin'] = "mobile";}
$usr['newpm'] = $row['user_newpm'];
$usr['auth'] = unserialize($row['user_auth']);
$usr['level'] = $sed_groups[$usr['maingrp']]['level'];
$usr['profile'] = $row;
if ($usr['lastlog']+$cfg['timedout'] < $sys['now_offset'])
{
$sys['comingback']= TRUE;
$usr['lastvisit'] = $usr['lastlog'];
$sys['sql_update_lastvisit'] = ", user_lastvisit='".$usr['lastvisit']."'";
}
if (empty($row['user_auth']))
{
$usr['auth'] = sed_auth_build($usr['id'], $usr['maingrp']);
$sys['sql_update_auth'] = ", user_auth='".serialize($usr['auth'])."'";
}
$sql = sed_sql_query("UPDATE $db_users SET user_lastlog='".$sys['now_offset']."', user_lastip='".$usr['ip']."', user_sid='".$usr['sessionid']."', user_logcount=user_logcount+1 ".$sys['sql_update_lastvisit']." ".$sys['sql_update_auth']." WHERE user_id='".$usr['id']."'");
}
}
}
else if ($cfg['ipcheck'])
{ $sql = sed_sql_query("SELECT * FROM $db_users WHERE user_id='$rsedition' AND user_password='$rseditiop' AND user_lastip='".$usr['ip']."'"); }$cfg['ipcheck'] aktif ise kullanıcının son kayıtlı ip adresi ile yeni ip adresinin aynı şartı arıyor. ip değiştiği zaman çerezin bir anlamı kalmıcak misal, ipcheck ayarı aktif olduğunda.
kullanıcı giriş yaptığı zaman
$_SESSION['rsedition'] = $ruserid;
$_SESSION['rseditiop'] = $rmdpass;
$_SESSION['rseditioq'] = $rdefskin;
session oluşturuyor fakat çerez okumasında bilgiler doğru ise session çerezi eklemiyor. burda bir eksiklik var, performansıda etkiler.
$sql = sed_sql_query("UPDATE $db_users SET user_lastlog='".$sys['now_offset']."', user_lastip='".$usr['ip']."', user_sid='".$usr['sessionid']."', user_logcount=user_logcount+1 ".$sys['sql_update_lastvisit']." ".$sys['sql_update_auth']." WHERE user_id='".$usr['id']."'");
herşey yolunda çerezden okuma yaptım sorguladım vs doğruladım bu işlemden sonra session oluşturmalıyım.
$_SESSION['rsedition'] = $rsedition;
$_SESSION['rseditiop'] = $rseditiop;
$_SESSION['rseditioq'] = $rseditios;
kodlara bakıp mantıksal yorumluyorum, net hata analizi için verileri işlemler sırasında görmem lazım.