Witam mam dziwny problem.
Mam skrypt logowania na sesjach i u mnie lokalnie wszystko działa.
Ale posadziłem go na serwerze i dzieje się takie coś:
po pierwszym poprawnym logowaniu wpuszcza mnie do systemu ale jak chce coś dalej zrobić to mnie wywala z powrotem do logowania, dopiero jak się drugi raz zaloguje to już moge normalnie pracować.
Patrzyłem w katalog sesji i widze że po przeladowaniu jest tworzona 2 sesja a ta pierwsza jest olewana i pewnie to jest przyczyna tego ale nie wiem co moge zrobić aby to zmienić.
<?php
$limit = 1800; //limit 1800 sekund czyli 30 minut
include "admin/includes/config.php";
$query = " SELECT * FROM {$pr}config, {$pr}config_l ";
if($hurt_conf==0){
if(!isset($_SESSION['login_usr'])){
include"includes/log.php";
if(!isset($_POST['submit'])) { $blad_log22='bad'; } else{
$login=$_POST['login'];
$haslo=$_POST['haslo'];
if ($login<>"" and $haslo<>"") {
$sql=mysql_query("SELECT * FROM {$pr}klienci WHERE login_klienta='$login' and haslo_klienta='$haslo' "); $_SESSION['lastAction'] = time(); $_SESSION['login_usr'] = $login;
$_SESSION['haslo_usr'] = $haslo;
$_SESSION['id_klienta'] = $dane[0];
$_SESSION['imie_klienta'] = $dane[3];
$_SESSION['adres_klienta'] = $dane[4];
$_SESSION['id_klienta_MAG'] = $dane[7];
$_SESSION['magazyn'] = $dane[8];
$_SESSION['grupa_kl'] = $dane[9];
$_SESSION['widz_stany'] = $dane[10];
$_SESSION['klient_hurt'] = $dane[11];
$_SESSION['up_rabat'] = $dane[12];
$_SESSION['magazyn_up'] = $dane[8];
$_SESSION['hurt_kl'] = $dane[27];
$wynik_rab = mysql_query ("SELECT * FROM {$pr}rabaty WHERE id_klienta_r='$dane[0]';") or
$_SESSION['rabat_klient'] = $stawka_rabat;
}
}else{ $blad_log22='bad'; }
}
else { $blad_log22='bad'; }
}
}
//sprawdzanie czy w ogóle zmienne są ustawione:
if(isset($_SESSION['login_usr']) && isset($_SESSION['haslo_usr']) ) {
//jeśli zalogowany ale sesja wygasła
if( (time()-$_SESSION['lastAction']) >$limit) {
// session_unset(); session_destroy();
// $blad_log='bad';
}
//zalogowany i sesja jest ok
else{
$sql=mysql_query("SELECT * FROM {$pr}klienci WHERE login_klienta='$_SESSION[login_usr]' and haslo_klienta='$_SESSION[haslo_usr]'"); $_SESSION['lastAction'] = time(); //aktualizujemy licznik czasu }
else { $blad_log22='bad'; // hasło i login w traksie sie zmieniło
}
}
}
if($blad_log22=='bad' ){ logowanie(); }
else{
// pobieranie treśći strony
include"includes/head.php";
include"includes/top.php";
}
}
else{
if ($_GET["akcja"]=="logout") { // wylogowanie
unset($_SESSION['login_usr']); unset($_SESSION['haslo_usr']); unset($_SESSION['id_klienta']); unset($_SESSION['imie_klienta']); unset($_SESSION['adres_klienta']); unset($_SESSION['rabat_klient']); unset($_SESSION['hurt_kl']); unset($_SESSION['login_handlowca']); unset($_SESSION['haslo_handlowca']); unset($_SESSION['id_handlowca']); unset($_SESSION['imie_handlowca']); unset($_SESSION['nazwisko_handlowca']); unset($_SESSION['hurt_kl']); unset($_SESSION['id_klienta_MAG']); unset($_SESSION['lastAction']); unset($_SESSION['grupa_kl']); unset($_SESSION['widz_stany']); unset($_SESSION['klient_hurt']); unset($_SESSION['up_rabat']); unset($_SESSION['magazyn_up']);
}
?>
Ten post edytował pyrek 8.05.2006, 18:13:03